Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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_Datalist - Fatal编程技术网

Javascript 语法错误,无法识别的表达式:选项[值=属性名称]

Javascript 语法错误,无法识别的表达式:选项[值=属性名称],javascript,jquery,datalist,Javascript,Jquery,Datalist,我有一个像这样的数据列表 <datalist id="properties"> <option value="property name"></option> <option value="property"></option> </datalist> 我在var pro=$('#properties')中遇到错误。查找(“option[value=“+user_property.replace

我有一个像这样的数据列表

<datalist id="properties">
       <option value="property name"></option>
       <option value="property"></option>
</datalist>
我在
var pro=$('#properties')中遇到错误。查找(“option[value=“+user_property.replace”('''-')+“])

错误代码显示
语法错误,无法识别的表达式:选项[value=property name]

如何消除此错误?

尝试添加引号,如下所示:

var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");
或者最好将其分解为:

var replaced = user_property.replace(' ','-');
var pro = $('#properties').find("option[value='"+replaced+"']");
如果要检查“属性名称”之类的文本,可以直接执行以下操作:

var pro = $('#properties').find("option[value='"+user_property+"']");

尝试在值周围添加引号,它将起作用

$('#properties').find("option[value='property name']")

您需要为您的价值添加单个报价,如

var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");

这会起作用,但选项列表有“属性名”,所以它会返回false@runningmark如果要检查“属性名”,则无需进行替换。。就像我补充的答案一样。。!这很奇怪,你的第二个解决方案是在firefox上工作,而不是在chrome上:\很有趣,它突然停止了在firefox和chrome上的工作,然后我意识到页面的源代码没有更新,然后我放弃了aptana:D的升华文本,无论如何谢谢你的回答:)
var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");