0

I have two selects with the same class and differents id. One of them is hidden, but when I'm trying get the value, I only get the value of the first select what I selected. Help please.

HTML

        <input id="marcas" name="tipoSearch" type="radio" onclick="opcionSearch(this.id)"><span id="spanmarcas" class="spancat">por Marcas</span>
        <input id="categorias" name="tipoSearch" type="radio" onclick="opcionSearch(this.id)"><span id="spancategorias" class="spancat">por Categor&iacute;as</span>
        <select id="selmarcas" class="selbuscar" style="display:none;"></select>
        <select id="selcategorias" class="selbuscar" style="display:none;"></select>
        <input id="butBuscar" type="button" value="Buscar" disabled="disabled"/>

JAVASCRIPT

function opcionSearch(opcion){
    document.getElementById('butBuscar').disabled=false;
    if(opcion=='marcas'){
        $('input[name=tipoSearch]').show();
        $('.selbuscar').prop('disabled', true); 
        $('.selbuscar').hide();
        $('.spancat').show();
        $('#'+opcion).hide();
        $('#span'+opcion).hide();
        $('#sel'+opcion).show();
        $('#sel'+opcion).prop('disabled', false);            
    }
    else{
        $('input[name=tipoSearch]').show();
        $('.selbuscar').prop('disabled', true); 
        $('.selbuscar').hide();
        $('.spancat').show();
        $('#'+opcion).hide();
        $('#span'+opcion).hide();
        $('#sel'+opcion).show();
        $('#sel'+opcion).prop('disabled', false);
    }
}

$('#butBuscar').click(function(){

        var value = $('.selbuscar').val();
        alert(value)

}); 
4

2 回答 2

2

你可以这样做:

$('#butBuscar').click(function () {
    $('.selbuscar').each(function () {
        var value = $(this).val();
        alert(value)
    });
});

您可以遍历所有selbuscar下拉列表,然后获取每个下拉列表的选定值。

更新

要获取启用的下拉列表的值,您可以执行以下操作:

$('#butBuscar').click(function () {
     var value = $('.selbuscar:enabled').val();
     alert(value);
});
于 2013-11-12T13:30:46.297 回答
0
$("select[class^='selbuscar']").click(function(){
    var value = $(this).val();
    alert(value);
});
于 2013-11-12T13:47:50.567 回答