Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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
Zend框架表单和jQuery选择器-如何通过。。。身份证件_Jquery_Zend Framework_Css Selectors_Zend Form - Fatal编程技术网

Zend框架表单和jQuery选择器-如何通过。。。身份证件

Zend框架表单和jQuery选择器-如何通过。。。身份证件,jquery,zend-framework,css-selectors,zend-form,Jquery,Zend Framework,Css Selectors,Zend Form,所以我对Zend框架生成的表单有这个问题 正如我们所知,Zend使用这种格式作为HTML元素的ID,即:contactDetails[名称]、contactDetails[电子邮件]等 首先,为什么Zend使用无效的HTML生成表单?根据以下规定,ID内不应有括号[]: ID和名称标记必须以 字母[A-Za-z]和可遵循 通过任意数量的字母、数字 [0-9],连字符-,下划线 _、冒号:、和句点 但真正的问题是,如果我们必须处理无效的Zend生成的id,如何使用jQuery正确地按id选择元素

所以我对Zend框架生成的表单有这个问题

正如我们所知,Zend使用这种格式作为HTML元素的ID,即:contactDetails[名称]、contactDetails[电子邮件]等

首先,为什么Zend使用无效的HTML生成表单?根据以下规定,ID内不应有括号[]:

ID和名称标记必须以 字母[A-Za-z]和可遵循 通过任意数量的字母、数字 [0-9],连字符-,下划线 _、冒号:、和句点

但真正的问题是,如果我们必须处理无效的Zend生成的id,如何使用jQuery正确地按id选择元素

在标准JavaScript中,这似乎是可行的:document.getElementById'contactDetails[email]'

但是在jQuery中:$'contactDetails[email]--这显然是错误的,因为括号是为属性选择器保留的

我发现的简单解决方法是将本机js selected对象包装在$function中:
$document.getElementById'contactDetails[email]'。使用此方法,我可以在此对象上使用所有jQuery函数,但这似乎是一个很难解决的解决方案…?

尝试转义方括号:

$("#contactDetails\\[email\\]");
jQuery希望这些表达式包含属性过滤器表达式。向下滚动到此链接的末尾:

从上面:

需要的字符的完整列表 要转义的:;&,.+*~':!^$=>|/


@罗卡尔-起初我只放了一个反斜杠。请复制粘贴以上内容并试一试。