2015-08-20 3 views
0

Я пытаюсь определить, есть ли значение, выбранное в поле выбора нескольких элементов. Мой HTML, какjQuery не работает с multiselect

<select id="courses_c" name="courses_c[]" multiple="true" size="6" style="width:150" title="" tabindex="0"> 
<option label="" value=""></option> 
<option label="Diploma of Beauty Therapy - In Class Mode" value="DBTCM" selected="selected">Diploma of Beauty Therapy - In Class Mode</option> 
<option label="Diploma of Beauty Therapy - Flexible Delivery" value="DBTFD">Diploma of Beauty Therapy - Flexible Delivery</option> 
<option label="Advanced Diploma" value="Advanced_Diploma">Advanced Diploma</option> 
<option label="Certificate II in Retail Make-Up and Skin Care" value="CRMS">Certificate II in Retail Make-Up and Skin Care</option> 
<option label="Certificate II in Nail Technology" value="CNT">Certificate II in Nail Technology</option> 
<option label="Cosmetic Tanning" value="CT">Cosmetic Tanning</option> 
<option label="Spray Tanning" value="Spray_Tanning">Spray Tanning</option> 
<option label="Design and Apply Makeup Short Course" value="DAMS">Design and Apply Makeup Short Course</option> 
<option label="Acrylic and Gels Short Course" value="AGSC">Acrylic and Gels Short Course</option> 
<option label="Airbrush Makeup Short Course" value="AMSC">Airbrush Makeup Short Course</option> 
<option label="Certificate III in Beauty Services" value="C3BS">Certificate III in Beauty Services</option> 
<option label="Certificate IV in Beauty Therapy" value="C4BT">Certificate IV in Beauty Therapy</option> 
<option label="Other Short Course" value="OSC">Other Short Course</option> 
</select> 
<br/> 
<br/> 
<input type="text" id="primary_course_of_interest_c" /> 

и мой JQuery, как

$("#courses_c").click(function(){ 
     var maincourse = $(this).val(); 
     if(maincourse.contains("DBTCM")) { 
      alert("found"); 
     } 
     else { 
      alert("not found"); 
     } 
}); 

Не уверен, почему это contains функция не работает для меня.

+1

Поскольку 'String.prototype.contains' не является функцией. Возможно, вы ищете [включает] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes), или, возможно, более старый [indexOf] (https: // developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf) – CodingIntrigue

+0

Вы можете использовать функцию 'String.prototype.indexOf', такую ​​как' maincourse.indexOf ("DBTCM")> -1' – Satpal

ответ

1

Javascript Строковый прототип dosent обеспечивает метод contains. Вместо этого используйте match. как ниже

$("#courses_c").click(function(){ 
    var maincourse = $(this).val(); 
    if(maincourse.match("DBTCM")) { 
     alert("found"); 
    } 
    else { 
     alert("not found"); 
    } 
}); 
Смежные вопросы