JQuery属性以选择器问题开始

时间:2011-06-14 15:53:47

标签: jquery jquery-selectors

我遇到了选择器[name^="value"]启动JQuery属性的问题。以下是我想做的事情

var parentContainer = $('#myparent');
$.each(parentContainer.find('*[name^="a[2].b[0].c"]'), function(){
 alert('Hi');               
});

虽然parentContainer的名称以a[2].b[0].c开头的元素仍然无法提醒'嗨'。

但是,当我尝试按照下面提到的那样工作时,

var parentContainer = $('#myparent');
$.each(parentContainer.find('*[name^="a[2].b"]'), function(){
 alert('Hi');               
});

需要你的帮助。提前致谢

1 个答案:

答案 0 :(得分:6)

查看对此question的回复。

以下引用可能会显示问题的原因:

  

ID和NAME令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0-9]),连字符(“ - ”),下划线(“ _“),冒号(”:“)和句号(”。“)。

方括号不是name(或id)属性值的有效字符,虽然它通常仍然有用,但在某些浏览器中可能会出现意外结果。

This fiddle在我的Firefox(仅尝试过的版本4),Safari 4和5,Chrome 12,IE8和IE9中工作正常但在IE6和IE7中失败(undefined已被警告)。