javascript 关注隐藏div中的输入

nukf8bse  于 2023-11-15  发布在  Java
关注(0)|答案(1)|浏览(97)

考虑下面的rails视图:

<div
    data-controller='manager'
    data-manager-target='inputcontainer'
>
  <input
      class='hidden'
      type='text'
      data-manager-target='input'
  >
</div>
<div
    data-manager-target='label'
    data-action='dblclick->manager#show'
>
  double click to show input
</div>

字符串
manager_controller.js中的代码:

show() {
  this.inputcontainerTarget.classList.remove('hidden');
  this.inputTarget.focus();
}


当我双击第二个div显示第一个时,我得到错误Uncaught TypeError: self.inputTarget is undefined
我明白为什么会这样,但我正在努力找到一种方法来使它工作。

有谁知道我该怎么做?

这是一个Ruby on Rails 7.1应用程序,我使用Stimulus连接前端和Tailwind进行造型。

vshtjzan

vshtjzan1#

<div data-controller="manager">
  <input class="hidden" type="text" data-manager-target="input">

  <!-- this needs to be inside the `data-controller` div -->
  <div data-action="dblclick->manager#show">
    double click to show input
  </div>
</div>

个字符
注意,data-controller="manager"元素上不需要data-manager-target="inputcontainer",你可以用this.element引用控制器元素本身。

相关问题