2013-07-15 3 views
0

Мне нужно иметь несколько значений, выбранных при вызове этой функции LoadDropDown. Но его не работает .... Пожалуйста, предложите, как выбрать несколько вариантов.Извлечение выбранных значений множественного выбора

<td>Select Profession:</td> 
<td> 
<select name="selectcontent_profession" id="selectcontent_profession" multiple> 
<option value="0">None</option> 
<option value="10">Student</option> 
<option value="201">Lecturer</option> 
<option value="333">Head Of Department</option> 
<option value="421">Principal</option> 
<option value="523">Chairman</option> 
<option value="667">Management</option> 
<option value="784">Placement Officer</option> 
</select> 
</td> 

<% 
String s1= "10,333,421,523"; 
String[] array = s1.split(","); 
%> 

<script > 
function LoadDropDown() 
{ 
<%for(int i=0;i<array.length;i++){%> 

document.getElementById("selectcontent_profession").value ="<%= array[i]%>"; 

<%}%> 
} 
</script> 

ответ

0

Сначала вы должны объявить несколько вариант селекционной выбора, как показано ниже:

<select name="selectcontent_profession" id="selectcontent_profession" multiple="multiple"> 

И ваша функция должна выглядеть так:

var fld = document.getElementById('selectcontent_profession'); 
for(var i=0;i<fld.options.length;i++){ 
for(var j=0;j<array1.length;j++){ 
    if(fld.options[i].value==array1[j])fld.options[i].selected=true; 
    } 
} 

Вы пытаетесь получить значение выпадающего списка, тогда как вы должны выбрать его.

+0

: Ваш метод был бы подходящим, если бы я использовал индексы. Но здесь я хочу использовать ценности. Массив String содержит значения параметров. Если я изменяю любое значение внутри параметра на 25. Поскольку существует только 7 индексов, значение не будет выбрано. –

+0

Ваш вопрос непонятен. Чего вы пытаетесь достичь? Почему вы изменили свою ценность для параметров? –

+0

Отредактировал свой ответ. Но все же я чувствую, что вы должны проверить, собираетесь ли вы изменить значение для опции в реальном. –

0

Вы должны add варианты, как

var option = document.createElement("option"); 
option.text = "<%= array[i]%>"; 
option.value = "<%= array[i]%>"; 
document.getElementById("selectcontent_profession").options 
                 .add(option); 
+0

Спасибо, но моя проблема заключается в выборе нескольких значений. Параметры не являются проблемой. –

0
document.getElementById("selectcontent_profession").options[<%=array[i]%>].defaultSelected =true; 

использовать этот оператор в цикле.

+0

Ваш метод был бы подходящим, если бы я использовал индексы. Но здесь я хочу использовать ценности. Массив String содержит значения параметров. Если я изменяю любое значение внутри параметра на 25. Поскольку существует только 7 индексов, значение не будет выбрано. –

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