根据选择器文档,您必须[使用双反斜杠等进行转义\\[。我有一个这样创建的选择器(假设val属性something[4][2]在此示例中)。var val = $(this).attr('val'); $select.find('option[value=' + val + ']').show();我可以写一个正则表达式为我逃脱括号吗?
3 回答
翻阅古今
TA贡献1780条经验 获得超5个赞
如果您希望某些东西具有任何价值,请尝试以下操作:
var val = $(this).attr('val').replace(/[!"#$%&'()*+,.\/:;<=>?@[\\\]^`{|}~]/g, "\\\\$&")
这可以通过用两个反斜杠转义jQuery文档的“ 选择器”页面上列出的所有CSS元字符来实现。
请记住,在您的情况下,无需执行此类棘手的操作。您可以使用过滤器功能选择具有给定值的所有选项元素,而不必转义该值,如Mathias Bynens的答案所述。
添加回答
举报
0/150
提交
取消