2015-01-14 2 views
0

Если у меня есть флажок с одним значением слова какразделенных запятыми значения флажок не выбран

<div id="search"> 
<input type="checkbox" value="Houston" > 
</div> 

Чем я могу сделать его выбрать с помощью ниже JQuery

$('#search').find("input:checkbox[value=Houston]") 
      .attr("checked", true); 

Но, если мое значение разделенные запятой как value="Texas, Houston" чем я не могу сделать установлен флажок, но получил сообщение об ошибке, как:

Syntax error, unrecognized expression: input:checkbox[value=Houston, Texas] 

как Я могу решить эту ошибку?

+0

Согласно [документации] (http://api.jquery.com/attribute-equals-selector/), значение атрибута в вашем селекторе может быть * msgstr "либо некотированное одно слово, либо строка с кавычками" *. – nnnnnn

ответ

2

Как , является мета характер, Вам необходимо пройти Texas, Houston с в кавычках, как value='Texas, Houston'

Использование

$('#search').find("input:checkbox[value='Texas, Houston']") 
     .prop("checked", true); 

Кроме того, если вы используете JQuery 1.6+, вы должны использовать вместо .prop() от .attr()

Другие способы

Читать Docs

Чтобы использовать любой из мета-символов (например,! "#% & $«() * +,./:; < =>? @ []^`{|} ~) Как буквальная часть имени, она должна быть экранирована двумя обратными косыми чертами: \\.

Вы можете также использовать

$('#search').find("input:checkbox[value=Houston\\,Texas]") 
+1

Спасибо. оно работает. – Masudul

Смежные вопросы