dojo.query不适用于包含波浪号(~)字符的属性选择器

dojo.query不适用于包含波浪号(~)字符的属性选择器,dojo,css-selectors,Dojo,Css Selectors,我需要选择一个给定url的链接节点。使用属性选择器可以很好地工作,除了少数url具有tilda的情况。我无法控制链接URL。以下是一个例子: <script> dojo.ready(function() { var node = dojo.query('a[href="http://abc.com/~123"]')[0]; console.debug(node); node = dojo.query('a[href="http://abc.com/_123"]

我需要选择一个给定url的链接节点。使用属性选择器可以很好地工作,除了少数url具有tilda的情况。我无法控制链接URL。以下是一个例子:

<script>
dojo.ready(function() {
    var node = dojo.query('a[href="http://abc.com/~123"]')[0];
    console.debug(node);
    node = dojo.query('a[href="http://abc.com/_123"]')[0];
    console.debug(node);
});
</script>
...
<body>
    <a href="http://abc.com/~123">link 1&lt;/a>
    <a href="http://abc.com/_123">link 2&lt;/a>
</body>

ready(function()){
var node=dojo.query('a[href='http://abc.com/~123"]')[0];
调试(节点);
node=dojo.query('a[href='http://abc.com/_123"]')[0];
调试(节点);
});
...
并且没有发现瓷砖字符上的任何内容不支持仅为CSS字符串的属性选择器值


救命啊

这似乎已在1.6中固定,标记为回归。谢谢你的报道你有没有试过逃离tilda?例如,如果它使用反斜杠转义,那么在URL查询中操作字符串就相对简单。此外,IIRC我想我在URL中遇到了类似的问题,它包含了一个符号(不在参数中)。
undefined
<a href="http://abc.com/_123">