从多个下拉菜单中获取值jQuery

时间:2013-12-27 16:40:48

标签: jquery

我想将多个下拉菜单中的值传递给模态。下拉列表是在foreach循环中创建的,下拉数量取决于特定订单上的产品数量。

以下是其中一个下拉菜单:

<select name="status_update_7873" class="confirm-options">
     <option value="2" selected="selected"></option>
     <option value="3">Shipped</option>
     <option value="4">Out of Stock</option>
     <option value="0">Cancel Item</option>
</select>

用户可以选择此产品的选项以及订单上的所有其他产品。为了确保产品状态正确并且用户在一次点击/发布中提交所有相关更新,我们使用确认用户选择的模式。模式显示从页面上的下拉列表中选择的产品名称和状态更新选项。

我不确定如何获取每个产品的状态更新。以下仅传递第一个下拉列表的值。我希望每个下拉列表中的选定选项显示相关产品。

$('.status_update_btn').click(function(){

    $('#status_update').modal('show');

    $('.confirm-options').each(function(){
        $('.modal-body .status').text($(".confirm-options").val());
    });
});   

这是一个jsfiddle(模态由alert取代):http://jsfiddle.net/9m3xs/5/

谢谢

1 个答案:

答案 0 :(得分:1)

each块未正确构建:http://jsfiddle.net/Palpatim/9m3xs/4/

基本问题:jQuery each将其函数传递给两个参数:当前项的索引和关联的DOM(不是jQuery)对象。当你像这样重写each函数时,它按预期工作:

$('.status_update_btn').click(function () {
    $('.confirm-options').each(function (i, e) {
        alert($(e).val());
    });
});