2013-02-14 2 views
0

Попытка заставить следующее работать, но не может найти что-то не так, что препятствует тому, чтобы выбор выполнялся.jQuery multiselect, выбранный на основе текста

<select multiple="multiple" class="inputbox" name="keywords[]" id="keywords"> 
<option value="4">4</option> 
<option value="11">Car</option> 
<option value="8" selected="selected">Cat</option> 
<option value="9">Elephant</option> 
<option value="6">Man</option> 
<option value="10">Mouse</option> 
<option value="1">One person</option> 
<option value="2">People</option> 
<option value="5">Woman</option> 
</select> 
<input type="text" class="inputbox" value="" id="keywords_new" name="keywords_new"> 
<a href="#" id="addkeyword">Add keyword</a> 

JQuery

$(document).ready(function(){ 
    $('#addkeyword').click(function (event) { 
    event.preventDefault(); 
    var newkeyword = $('#keywords_new').val(); 
    var keyselect = $('#keywords'); 
    keyselect.each(function() { 
     alert(newkeyword); 
     if ($(this).text() == newkeyword){ 
       alert(newkeyword); 
      $(this).attr("selected", "selected").multiselect("refresh"); 
     } 
    }); 
}); 
}); 

Тестирование на http://jsfiddle.net/SwmN6/58/

+0

Предупреждение() s предназначено только для тестирования – McRui

ответ

1
var keyselect = $('#keywords') 

быть не должно?

var keyselect = $('#keywords option') 
+1

Я так не думаю. Кажется, он хочет выбрать типизированное ключевое слово. – ByScripts

+0

@ByScripts - абсолютно! Это недостающая часть головоломки. Спасибо! Тест на jsfiddle и работающий – McRui

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