Jquery ID选择器不起作用

use*_*585 1 javascript jquery jquery-ui jquery-plugins

我有一堆带有这样标签的HTML:

<div id="Field~1">Text text</div>
Run Code Online (Sandbox Code Playgroud)

我不能使用普通的ID选择器,如:

alert($("#Field~1").text())
Run Code Online (Sandbox Code Playgroud)

我猜它与"〜"有关但是有可能仍然引用这些类型吗?

我在这里设置了一个JSfiddle:http://jsfiddle.net/4M97c/

Mil*_*war 8

您需要在选择器中转义所有出现的特殊字符\\.

第一种方法:

 alert($("#Field\\~1").text())
Run Code Online (Sandbox Code Playgroud)

工作演示

第二种方法:

var ID="Field~1";
alert($("[id='"+ID+"']").text())
Run Code Online (Sandbox Code Playgroud)

工作小提琴


Fel*_*lix 6

你需要~使用双反斜杠转义特殊字符\\.来自文档:

要使用任何元字符(例如!"#$%&'()*+,./:; <=>?@ [] ^`{|}〜)作为名称的文字部分,必须使用两个反斜杠进行转义:\\

alert($("#Field\\~1").text())
Run Code Online (Sandbox Code Playgroud)

更新小提琴