Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当用户单击表tbody tr时_Javascript_Jquery_Click - Fatal编程技术网

Javascript 当用户单击表tbody tr时

Javascript 当用户单击表tbody tr时,javascript,jquery,click,Javascript,Jquery,Click,我想知道是否有人能告诉我为什么下面的方法不起作用 $("tbody[name=leadstores] tr").live('click',function(e){ alert("clicked"); alert(this.attr("id")); }); 您的根本问题是需要将这个包装到jQuery函数中。否则就不能使用jQuery的方法 alert($(this).attr("id")); 虽然这不会导致Javascript错误,但您不应该在任何accept

我想知道是否有人能告诉我为什么下面的方法不起作用

$("tbody[name=leadstores] tr").live('click',function(e){
        alert("clicked");
        alert(this.attr("id"));
});

您的根本问题是需要将
这个
包装到jQuery函数中。否则就不能使用jQuery的方法

alert($(this).attr("id"));
虽然这不会导致Javascript错误,但您不应该在任何accept for input元素上使用
name
属性

此外,从jQuery 1.7开始,已折旧。您应该改用。

以下几点:

不是jQuery对象,必须包装在
$(this)
中才能使用jQuery方法


您确定
TBODY
具有
name
属性吗?对于
t车身
,这不是一件常见的事情。如果它没有名称,那么选择器将找不到它。

您提供的代码示例确实有效(不过,正如其他人所指出的,您需要将此
包装在jQuery包装器中

下面是一个代码示例(带有一些支持HTML的代码)


您能发布一个HTML示例吗?.live已被弃用。您必须使用旧库的任何原因?请使用。单击(function(){});instead@IsaacFife
click
不能很好地替代像
live()
这样的委派方法。如果使用“on”,则使用
on()
更合适,只需确保您传递了正确的签名(否则,您就错过了委托!),类似于:$(“#foo”)。在(“单击”,function(){/*../})将导致事件被绑定(类似于。单击或绑定('click')),而不是:$(“#foo”)。在(“单击”,“#bar”,function(){/*/})它代表事件。name属性对TBODY元素无效。它不限于输入元素,它对以下所有元素(某些元素需要)都有效:按钮、文本区域、小程序、选择、窗体、框架、IFRAME、IMG、A、输入、对象、映射、参数和元。