选择了Jquery无法识别的表达式

时间:2017-04-14 09:59:08

标签: javascript jquery

我有以下代码,它应该从选择下拉列表中选择值:

 $('#edit_condition option[value=' + value.client_status + ']').attr("selected", "selected");

HTML上的值是Care and Not Care,如下所示:

<select class='form-control condition' required="" name='condition' id='edit_condition'>
                                                            <option value=''> </option>
                                                            <option value='Care'>Care</option>
                                                            <option value='Not Care'>Not Care </option>
                                                        </select>

当返回的值是来自jquery JSON文件的Care时,它会很好地突出显示该值,但是当值为Not Care时,我收到以下错误:

jquery-1.10.2.js:1850 Uncaught Error: Syntax error, unrecognized expression: #edit_condition option[value=Not Care]

如何处理上述问题? /我应该如何在JQuery上传递我的值?

2 个答案:

答案 0 :(得分:2)

根据docs,正确的语法是

jQuery( "[attribute='value']" )

因此行

 $('#edit_condition option[value=' + value.client_status + ']')

应该是

 $('#edit_condition option[value="' + value.client_status + '"]')

值用双引号括起来。

答案 1 :(得分:0)

使用这个jQuery函数它会起作用。 $("#edit_condition").val(value.client_status);