1

有一个选择器,当我选择一个特定选项时,它会显示额外的表单字段。那时我想将焦点切换到新领域。这是我尝试过的,但似乎不起作用。我错过了什么?:

   $('#mySelector').change(function () {
        var st = $(this).val();
        if (st == 'a') {                
            $('#a').show(function(){
                $('#aField').focus();
            });
            $('#b').hide();
        } else if (st == 'b') {
            $('#a').hide();
            $('#b').show(function(){
                $('#bField').focus();
            });             
        } else {
            $('#a, #b').hide();
        }
    });
4

1 回答 1

0

这行得通。您的错误在代码的其他地方。您的 HTML 中可能有错字:

<select id="mySelector">
    <option value=""></option>
    <option value="a">a</option>
    <option value="b">b</option>
</select>

<div id="a">
    <input type="text" value="A field" id="aField" />
</div>

<div id="b">
    <input type="text" value="B field" id="bField" />
</div>

http://jsfiddle.net/zwR4F/

于 2013-03-01T23:20:15.430 回答