如果 id 有 '.',则 JQuery 选择器逻辑失败在价值。有啥解决办法吗?
Posted
技术标签:
【中文标题】如果 id 有 \'.\',则 JQuery 选择器逻辑失败在价值。有啥解决办法吗?【英文标题】:JQuery selector logic fails if id has '.' in the value. Any solution?如果 id 有 '.',则 JQuery 选择器逻辑失败在价值。有什么解决办法吗? 【发布时间】:2010-09-17 12:14:22 【问题描述】:我正在为我的 Web 应用程序使用 Spring Forms。对于嵌套属性,form 标签生成具有 id/name 形式的输入元素。
例如,Person 是命令类,而 Address 包含在其地址字段中,那么 city 元素将是,
<input type="text" id="address**.**city" name="address**.**city" />
现在,问题是每当我尝试使用 jQuery 获取它的值时,
$("#address.city").val();
jQuery 未能选择任何合适的元素!
请告诉我任何解决方案。
提前致谢。
【问题讨论】:
不是解决方案,但您的问题似乎缺少各种文本。也许值得重新编辑这些内容,让想要帮忙的人更容易。 【参考方案1】:试试这个:
$("#address\\.city").val();
来自the documentation:
注意:如果您希望将上述任何元字符用作名称的文字部分,则必须使用两个反斜杠 (
\
) 转义该字符。例如:
#foo\\:bar
#foo\\[bar\\]
#foo\\.bar
【讨论】:
'ID 和 NAME 标记必须以字母 ([A-Za-z]) 开头,后跟任意数量的字母、数字 ([0-9])、连字符 ("- ")、下划线 ("_")、冒号 (":") 和句点 (".")' - w3.org/TR/html401/types.html#type-name【参考方案2】:$('[id="address.city"]')
也可以
【讨论】:
以上是关于如果 id 有 '.',则 JQuery 选择器逻辑失败在价值。有啥解决办法吗?的主要内容,如果未能解决你的问题,请参考以下文章