jQuery从具有给定名称的checked元素中获取值

时间:2010-06-02 15:25:44

标签: javascript jquery html

我有这样的输入:

我想使用jQuery来获取该元素,并将函数call foo()添加到change事件中。目前我可以完成它,但涉及两个黑客。我的(工作)代码:

$(":input[name*=myfield]").change(
 function( $(":input[name*=myfield]") ) {
  foo();
 });
)};

我想消除两种黑客攻击。

  1. 请记住输入名称是多维数组,如何使用:input [name = somename],而不是[name * = someone]?我认为使用确切的名称而不是* =会更快,但我无法使多维数组上的括号的转义序列正确。
  2. 我可以将调用链接在一起,这样我就不必两次选择元素吗?标准做法是将HTML元素选择到var中,然后使用该var吗?或者我可以把它连在一起吗?
  3. 感谢您的帮助。仍在努力在JS / JQ中站稳脚跟。

3 个答案:

答案 0 :(得分:4)

1 - 要转义括号和其他元字符,请使用\\[。请参阅Selectors

2 - $(":input[name*=myfield]").change(foo);

答案 1 :(得分:1)

这有什么问题?

$("input[name=somename]").change(function(){..});

答案 2 :(得分:1)

在你的html元素中使用数据 - *如此

<input type="checkbox" data-name="box" name="myName[0][1]" checked="" />

然后在jQuery中

$('input[data-name=box]').click(foo);

function foo()
{
   //this = input element
}