Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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
Javascript 选择不工作的特殊字符_Javascript_Jquery_Html_Jsp - Fatal编程技术网

Javascript 选择不工作的特殊字符

Javascript 选择不工作的特殊字符,javascript,jquery,html,jsp,Javascript,Jquery,Html,Jsp,我有一个选择框,它是 <select> <option value="">--Select--</option> <option id="402883273d3fe2bd013d49db55ca0007" value="~`!@#$%^&*()_+-={}|[]\:" title="~`!@#$%^&*()_+-={}|[]\:">~`!@#$%^&amp;*()_+-={}|[]\:</option> <

我有一个选择框,它是

<select>
<option value="">--Select--</option>
<option id="402883273d3fe2bd013d49db55ca0007" value="~`!@#$%^&*()_+-={}|[]\:" title="~`!@#$%^&*()_+-={}|[]\:">~`!@#$%^&amp;*()_+-={}|[]\:</option>
<option id="402883273b660e71013b6ff04187000d" value="asdasd" title="asdasd">asdasd</option>
<option id="402883273952e67f01395332fd5f0006" value="CC-1" title="CC-1">CC-1</option>
<option id="402883273bdb9824013c14d3c2c30007" value="rto" title="rto">rto</option>
<option id="402883273bdb9824013c14d5decf0008" value="xc" title="xc">xc</option>
</select>

--挑选--
~`!@#$%^&*()_+-={}|[]\:
asdasd
CC-1
rto
xc
现在,当我加载页面并选择选项时,其值为=“~`!@$%^&*()”\u+-={}\ 124;[]\:“ 它没有被选中

选择代码为:

var selectedCategory = "<%=StringEscapeUtils.escapeJavaScript(toEditClause.getClauseGroup().getClauseCategory().getName())%>";
        console.log("before : "+selectedCategory);
        selectedCategory = selectedCategory.replace(/'/g,"\\'");
        console.log("After : "+selectedCategory);
        jQuery("#clauseCategory_ option[value='"+selectedCategory+"']").attr("selected", "selected");
var selectedCategory=”“;
console.log(“before:+selectedCategory”);
selectedCategory=selectedCategory.replace(/“/g,\\\”);
console.log(“在:+selectedCategory之后”);
jQuery(“#clauseCategory”选项[value='”+selectedCategory+']”).attr(“selected”,“selected”);
我认为问题是由于特殊字符造成的,否则,如果我选择一些其他值,如:“CC-1”。。它工作正常

您可以使用:


不选择值,而是选择ID。。ie根据ID进行选择。。所以使用这个
jQuery(“#clauseCategory_uuu”选项[id=”+selectedCategory+“]”)

是否没有其他方法可以选择该选项?通过类,或者索引?您也可以尝试通过
val()
jQuery(“\clauseCategory”).val(selectedCategory;
尝试URL编码值..使用“\\`转义特殊字符未被选中是什么意思?您的意思是..无法在浏览器中选择…(或)您没有将所选值输入selectedCategory…我刚刚验证了IE8浏览器,我可以在浏览器中选择选项…请再次检查
// Escapes special characters and returns a valid jQuery selector
function jqSelector(str)
{
    return str.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g, '\\$1');
}