语法错误,无法识别的表达式:option[value=属性 name]
Syntax error, unrecognized expression: option[value=property name]
我有一个看起来像这样的数据列表
<datalist id="properties">
<option value="property name"></option>
<option value="property"></option>
</datalist>
现在我正在使用此代码查找用户输入的值在列表中的位置:
var user_property = $('#user_property').val().toLowerCase(); // taken from input type with id user_property
var pro = $('#properties').find("option[value="+user_property.replace(' ','-')+"]");
if(pro != null && pro.length > 0)
{
// run some code
}
else
{
// show error popup
}
我在 var pro = $('#properties').find("option[value="+user_property.replace(' ','-')+"]");
中遇到错误
错误代码显示 Syntax error, unrecognized expression: option[value=property name]
如何摆脱这个错误?
尝试添加引号,如:
var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");
或更好地分解为:
var replaced = user_property.replace(' ','-');
var pro = $('#properties').find("option[value='"+replaced+"']");
如果你想检查像"property name"这样的文本,那么你可以直接这样做:
var pro = $('#properties').find("option[value='"+user_property+"']");
尝试在值周围添加引号,它会起作用。
$('#properties').find("option[value='property name']")
您需要为您的值添加单引号,例如
var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");
我有一个看起来像这样的数据列表
<datalist id="properties">
<option value="property name"></option>
<option value="property"></option>
</datalist>
现在我正在使用此代码查找用户输入的值在列表中的位置:
var user_property = $('#user_property').val().toLowerCase(); // taken from input type with id user_property
var pro = $('#properties').find("option[value="+user_property.replace(' ','-')+"]");
if(pro != null && pro.length > 0)
{
// run some code
}
else
{
// show error popup
}
我在 var pro = $('#properties').find("option[value="+user_property.replace(' ','-')+"]");
错误代码显示 Syntax error, unrecognized expression: option[value=property name]
如何摆脱这个错误?
尝试添加引号,如:
var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");
或更好地分解为:
var replaced = user_property.replace(' ','-');
var pro = $('#properties').find("option[value='"+replaced+"']");
如果你想检查像"property name"这样的文本,那么你可以直接这样做:
var pro = $('#properties').find("option[value='"+user_property+"']");
尝试在值周围添加引号,它会起作用。
$('#properties').find("option[value='property name']")
您需要为您的值添加单引号,例如
var pro = $('#properties').find("option[value='"+user_property.replace(' ','-')+"']");