【问题标题】:jquery: select clicked td table element with multiple different id's and other tds on same pagejquery:在同一页面上选择具有多个不同 id 和其他 td 的单击的 td 表元素
【发布时间】:2013-01-14 01:46:29
【问题描述】:

我正在构建调度软件。我正在使用许多表格来显示时间/日期等。

在一个特定的表格中,有一些带有 ID 的单元格列出了日期和员工 ID 号。

我正在尝试设置交易班次系统。单击单元格时,将执行 ajax 函数。

这是一个示例单元格:

<td id="tblcell-2013_03_13-id_3" class="displayShift">$data placed here</td>

jQuery 代码:

$(document).ready(function () {

  // I can't do this because each id is different
  $("td#tblcell").click(function () {
    alert('it works!');

  });

  // I can't do this because there other other td elements on the same page in other tables
  $("td").click(function () {
    alert('it works!');
  });

});

如何设置一个在单击特定单元格时激活的函数,该函数还将 var 数据传递给脚本中的函数,该脚本具有无法在此函数中引用的其他 td 表元素?

谢谢

【问题讨论】:

  • 请发布更多您的 HTML 以及单击单元格时应从其他单元格访问的其他内容的示例。最明显的是使用类选择器。 $('.displayShift').click(function() {console.log($(this));}); 其中$(this) 是被点击的单元格。
  • 我不明白,抱歉。哪些是other td table elements 并且所有内容都可以从任何地方引用,除非它是作用域的,但 DOM 元素不是这种情况,因此它们是可引用的。
  • kidwon,感谢您的回复。还有其他表 td 元素和其他具有自己 td 的表。因此,使用通用“td”选择器作为点击函数将触发所有这些其他 td 元素。我在这里设置了一个问题的演示:jsfiddle.net/NMGNb

标签: php jquery selector


【解决方案1】:

您可以使用td[id^="tblcell"] 选择器选择所有ID 以tblcell 开头的TD

$('td[id^="tblcell"]').click(function() {
    // ... do stuff ...
});

attribute-value-starts-with selector 演示http://jsfiddle.net/ARkxD/

【讨论】:

  • 感谢您的快速回复。我不知道你能做到这一点,所以我学到了一些东西。我试过了,Firebug 没有给出任何错误。当我单击一个单元格时,警报不会触发。什么都没发生。没有错误。我正在使用 jquery 1.8.2 和 jqueryiu 1.9.1
  • 感谢演示。尝试点击我的演示..它很难看..尝试点击带有首字母“DD”“FH”等的td..它不会触发:jsfiddle.net/NMGNb
  • 您的演示中没有包含 jQuery(在 jsfiddle 的左侧面板上)。我已经用包含的 jquery 更新了它(没有其他变化)。现在可以了。 jsfiddle.net/NMGNb/1
  • 谢谢!有用。太棒了,我今天学到了一些非常有价值的东西。谢谢
猜你喜欢
  • 1970-01-01
  • 2013-05-18
  • 1970-01-01
  • 1970-01-01
  • 2013-03-18
  • 1970-01-01
  • 1970-01-01
  • 2020-02-19
  • 2012-09-01
相关资源
最近更新 更多