尝试在表上创建查找器时出错

问题描述

我正在尝试替换我在 django 中创建的应用程序的 jquery,并且我正在尝试使用刺激 js,因为它与 turbolink 一起似乎是一个不错的选择,但是我在创建数据表时遇到了问题,在输入文本时搜索引擎正确执行并返回我写的内容,但问题出在表中,因为浏览器控制台返回未定义的值。 这是我的 html:

<div data-controller="search">
                        <input type="text" placeholder="Buscar..." maxlength="15" data-action="search#searchTable"data-search-target="q">
                        <table class="highlight centered">
                            <thead>
                                <tr>
                                    <th>Tipe de Tarea</th>
                                    <th>Estado</th>
                                    <th>Fecha de Creacion</th>
                                    <th>Accion</th>
                                </tr>
                            </thead>

                            <tbody>
                                <tr>
                                    {% for field in object_list %}
                                    <td data-search-target="name">{{ field.name }}</td>
                                    <td>{{ field.status|yesno:"Visible,No visible" }}</td>
                                    <td>{{ field.created_at }}</td>
                                    <td>
                                        <a href="#!">editar</a>
                                    </td>
                                    {% endfor %}
                                </tr>
                            </tbody>
                        </table>
                    </div>

这是我的控制器:

const application = Stimulus.Application.start();
const { Controller } = Stimulus;

application.register(
  'search',class extends Controller {
    static get targets() {
      return ['q','name'];
    }

    searchTable() {
      console.log(this.naMetarget.value);
    }
  }
);

解决方法

我认为您混淆了目标。 q 是输入并且会有一个值。 name 是表格单元格,因此只有 innerHTML。相反,它应该是:

searchTable() {
  console.log(this.qTarget.value);
}

但我建议您更进一步,将事件传递给您的 searchTable 函数。那么你不需要输入的数据目标。

searchTable(e) {
  console.log(e.srcElement.value);
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...