使用jQuery,Javascript或PHP </option> </select>从备用选择中选择<select> <option>

时间:2014-09-08 22:48:55

标签: javascript php jquery mysql

我需要有关选择复制的帮助,因为我对此一无所知。这是我的问题:我需要从一个选择中选择一个状态,然后让它在另一个选择中自动选择相同的状态。但是我的值对于每个选择都是不同的,因为信息将被处理到服务器(否则,不会有问题,因为我不需要从一个选择复制到另一个选择)。这是我的格式:

<select name="state" size="1" id="stateSelect">
<option value="AL">Alabama</option>
<select>

<select name="state" size="1" id="stateSelect2">
<option class="AL" value="Alabama">Alabama</option>
</select>

这是我目前的jQuery,我从互联网上拼凑起来(显然不起作用):

$(function(){
    $("select[name*='state']").change(function(){
        $("#stateSelect2").children(':selected').hasClass( $("#stateSelect").val() )
    })
})

因此,我需要做的是复制“stateSelect”选择的值,并选择具有所选“stateSelect”选项值的类的“stateSelect2”的值。我不知道这是多么容易或多难,但我肯定会感谢这个问题的任何和所有帮助。如果您使用JSFiddle,奖励积分给您。谢谢!

2 个答案:

答案 0 :(得分:0)

$('#stateSelect').on('change', function(){
    var v = $(this).val();
    $('#stateSelect2 .'+v).prop('selected', true);
});

http://jsfiddle.net/dipser/9ca0eL1d/

答案 1 :(得分:0)

这样的事情应该足够了:

$(document).ready(function(){
    $('#stateSelect').on('change', function(){

        var val = $(this).val();

        if(val.length > 0 && $('#stateSelect2 option.' + val).length > 0) {

            $('#stateSelect2 option.' + val).attr('selected', 'selected');
            // could also use .prop() here instead of attr
            // which would be .prop('selected', true);
        }
    });
});

if语句可确保所选的option有一个值,存在于第二个select中。

JSFiddle Demo