javascript - 如何使 <td> 可点击

标签 javascript jquery html css asp.net-mvc

我创建了一个表来在 <td> 中显示我的 SPARQL 查询结果,结果确实显示,但我希望它在 <td> 时显示(结果)被点击它显示一个消息框。现在一个额外的<td>显示在顶部,它只适用于那个特定的。单击实际结果时似乎没有任何反应 <td> :

我的代码:

    <table id="results">
    <td class="td" onclick="myFunction()"></td>
    </table>
    <body>
        <script type="text/javascript">
         PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>        
PREFIX type: <http://dbpedia.org/class/yago/>
PREFIX prop: <http://dbpedia.org/property/>
SELECT ?country_name
WHERE {
    ?country rdf:type type:Country108544813.
    ?country rdfs:label ?country_name.

}
                "Limit 1"
                ].join(" ");

                alert("this query: [" + query + "]");

                var queryUrl = url + "?query=" + encodeURIComponent(query) + "&format=json";




</body>

JavaScript 代码是从网上找来的所以还在摸索,主要用途是显示查询结果。是的,非常感谢您的回答,感谢您的阅读:)

最佳答案

所以首先,您的 html 有点偏离......您的表格在标签之外,而它应该在标签内:(注意 td 通常也会在标签内)

<body>
    <table id="results">
        <tr><td class="td" onclick="myFunction()"></td></tr>
    </table>
    <script type="text/javascript">
    ....

但更准确地说,对于您的问题:您已经创建了一个 单元格,并且仅向它附加了一个 onclick 事件处理程序。您获取的 javascript 代码实际上新行和单元格添加到表中,而这些行和单元格没有分配 onclick 处理程序。

所以我会尝试这样的事情:

<script type="text/javascript">
        var table = $("#results");
        table.on("click", "td", myFunction); // <-- magic!
        var url = "http://dbpedia.org/sparql";

“魔法”行是甜蜜的部分:它将处理程序附加到整个 表上,但通过“td”选择器过滤事件。动态添加 DOM 元素时的理想选择...

然后你不需要设置你的初始 td,然后在你的表格顶部是空的并且可以点击......相反,只需在你的页面上放置一个空表格:

<body>
    <table id="results"></table>
    <script type="text/javascript">
    ....

希望这对您有所帮助!

关于javascript - 如何使 <td> 可点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41192540/

相关文章:

html - HTML5的视频标签(默认图片)

javascript - 无法捕获由 js 附加的类的单击事件

html - 包含 iframe 的页面中的选项卡(键盘)导航

JavaScript学习,在写代码中

javascript - Vue Canvas $ref 未在调整大小时定义。抛出错误但作品似乎仍然有效?

javascript - Jquery: FullCalendar - 设置整个日历的开始日期和结束日期

jquery - 向 el 元素添加点击事件并从 Backbone 中的 DOM 中删除

javascript - 如何在移动设备上滚动覆盖 div

javascript - jQuery 和 "hash"有问题吗?

jquery - 如何在开始转换之前阻止移动 Safari 暂停