从select中读取值

时间:2013-07-05 11:51:37

标签: jquery html-select

我有大约30个这样的选择形式,具有不同的id(number_x):

<div class="holder">
    <select class="start" id="number_x" maxlength=5 size=1 value>
        <option value><option>
        <option value>1<option>
        <option value>2<option>
        <option value>3<option>
        <option value>4<option>
        <option value>5<option>
    </select>
</div>    
<div class="holder">
    <select class="start" id="number_x+1" maxlength=5 size=1 value>
        <option value><option>
        <option value>1<option>
        <option value>2<option>
        <option value>3<option>
        <option value>4<option>
        <option value>5<option>
    </select>
</div>

选择1到5之后的值我需要用jquery读取它,所以我可以将它写在表中以供将来计算。

--pseudocode (val() dont work)
$(button).click{
    for(x++){
        tab[x]= $('.holder .start#number_x').val();
     }
}

我只需要读取select.start中的值

6 个答案:

答案 0 :(得分:1)

对于从_number_x_开始的各种ID, 试试这个伪代码:

$(button).click{
    for(x++){
        tab[x]= $('select[id^=number_x]').val();
     }
}

$(button).click{
   for(x++){
      tab[x]= $('.holder .start#number_x' + x '"').val();
   }
}

用于HTML标记

这样做

<option value=""><option>
<option value="">1<option>

答案 1 :(得分:0)

您的html语法无效。

更改

  <option value><option>
        <option value>1<option>

 <option value=""><option>
   <option value="">1<option>...and so on 

然后调用val()工作

See Demo here

答案 2 :(得分:0)

你应该使用

<option><option>
<option>1<option>

<option value=''><option>
<option value='1'>1<option>

您可以在jquery中使用val()函数来获取值

答案 3 :(得分:0)

在表格中添加所有选择框,您可以使用以下方式遍历每个表单中的选择框:

$('#'+tableId+' select').each(function(){
   selected_value = ($(this).val());
   //add your logic to store it in a table for future calculations
});

答案 4 :(得分:0)

您可以使用属性starts with selector来定位相关的<select>元素。然后只需存储id: value对,如下所示:

var selectValues = [];
$('select[id^="number_"]').change(function() {
    selectValues[this.id] = this.value;
});

Here's a demo fiddle

答案 5 :(得分:0)

请查看http://jsfiddle.net/2dJAN/86/

如下所示,您可以获取所有选择框的选定值

$.each($('select'),function(){
        alert($("option:selected", this).val());
});