2

我的页面上有以下输入:

<input type="text" name="r1" />

我正在尝试使用 JQuery 选择它$("[name='r1']"),并且由于某种原因它返回null. 好的,好的,标题具有误导性,因为是我做错了;你能告诉我什么吗?

编辑:

$('input[name="r1"]')也不行。另外,很抱歉错字。

4

7 回答 7

7

最后编辑

工作演示

html代码

<input type="text" name="r1" />​

jQuery代码

$(document).ready(function() {
   alert($('input[name="r1"]').length);
});​

旧更新

你在这里有拼写错误你试图找到r2不存在的元素只是更新代码$("[name='r1']")

或者

找到正确的方法你应该做如下

$("input[name='r2']")$("[name='r2']")不仅仅是

编辑

根据您编辑的问题,您应该在此处查看示例:属性等于选择器 [name="value"]

编辑

为了正确检查你可以这样做

$(document).ready(function() {
   alert($('input[name="r1"]').length);
});
于 2012-10-25T12:50:20.047 回答
2

刚刚做了一个快速测试:

<input type="text" name="r1" />​

使用以下 Javascript

$('input[name=r1]').click(function(e){
  alert('found');
});​

它工作得很好!

于 2012-10-25T12:53:14.093 回答
1

你没有告诉 jQuery 你在寻找什么元素,那就是你input

尝试这样做

$('input[name=r1]')

于 2012-10-25T12:51:50.813 回答
1

我认为选择器是错误的。应该是r1相对的r2

jsFiddle

$("[name=r1]")
于 2012-10-25T12:52:08.353 回答
1

您需要包含属性过滤器的 html 标记。

$("input[name='r2']");

有关属性选择器的更多信息,请参阅链接。

于 2012-10-25T12:54:34.867 回答
1

它将明确地工作:

$("*[name='r1']")
于 2012-10-25T12:57:13.337 回答
0

您可以同时使用$("[name='r1']")$('input[name="r1"]')在这种情况下

$("[name='r1']")如果您想选择任何属性名为“ name ”等于“ r1 ”的元素,请使用

$('input[name="r1"]')如果您只想选择属性为“ name ”等于“ r1 ”的输入元素,请使用

此处列出了更多 JQuery 属性填充器示例

于 2016-02-16T08:03:21.443 回答