繁体   English   中英

jQuery click(fn)不适用于输入元素

[英]jQuery click(fn) won't work with input element

我想使用jQuery检测一堆单选按钮上的点击。 它们都被分配了一个css类foobar来检测它们。 容易吧? 仍然,此代码不起作用:

$("input.foobar").click(function ()
{ 
    alert(this.id);
}
);

上面的代码有什么问题?

this.id是否真的返回当前单选按钮的ID?

编辑:页面上的HTML确实很烂(没有验证),所以也许是问题所在...

编辑2: HTML超出了救赎的范围。 将不得不让它并修复变通办法。 愿HTML诸神原谅我!

$("input.foobar").change(function () {
    alert(this.id);
});

基本上,您的代码没有任何问题,它应该可以工作。 但是也许html可以帮助您了解问题所在。

回答第二个问题,是的,'this.id'是有效的javascript。

尝试

$("input.foobar").change(function ()

而不是.click(function ()

您的代码示例没有错,对我而言,它可以正常工作:

<input type="radio" class="foobar" id="x1" />
<input type="radio" class="foobar" id="x2" />
<input type="radio" class="foobar" id="x3" />

单击收音机会显示带有收音机ID的警报框。 您是否真的单击了框,而不是单击周围的文本或标签元素?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM