javascript焦点问题

时间:2011-03-04 13:59:29

标签: javascript jquery

我有一个包含3个字段的表单。国家,州和用户

none

我正在尝试执行以下操作。当美国被选为国家时,国家领域将显示。问题是,当我使用键盘上的Tab键时,它会跳过状态字段并将其转到用户字段。所以我尝试使用焦点属性,所以当我选择美国时,状态将显示+选中,但我没有运气..下面请找到我正在使用的代码

$(document).ready(function () {

 $("#cmbCountries").change(function () {
    $("#cmbCountries option:selected").each(function () {
        if ($(this).text() == "United States") {               

            $("#cmbstate").show(); 
            $("#cmbstate").focus(); 

        }

        else {
            $("#cmbstate").hide();
        }
    });
}).change();   });

请帮忙吗?

3 个答案:

答案 0 :(得分:1)

Chek this out

和javascript

$(function (){

    $("#cmbstate").hide();

    $("#cmbCountries").change(function () {
        if($(this).val() == 'US')
        {
            $("#cmbstate").show();
            $('#cmbstate').focus()
        }
        else{
            $("#cmbstate").hide();
            $('#users').focus();
        }
    })


})

和html

<input type="text" name="text" id="first" />
<select id="cmbCountries">
    <option value="OTHER">OTHER</option>
    <option value="US">US</option>
    <option value="OTHER1">OTHER1</option>
</select>
 <select id="cmbstate">
     <option value="value">Value 1</option>         
     <option value="value">Value 2</option>
     <option value="value">Value 3</option>
</select>
<select id="users">
    <option value="asf">asdfasdf</option>
    <option value="fadfas">sdffd</option>    
</select>

答案 1 :(得分:0)

Tabindex值必须是错误的,尝试并分别手动将每个输入的Tabindex设置为0,1,2,然后您应该能够轻松地在它们之间进行选项卡

答案 2 :(得分:0)

请尝试使用此代码,

$(document).ready(function () {

 $("#cmbCountries").change(function () {
    $("#cmbCountries option:selected").each(function () {
        if ($(this).text() == "United States") {               

            $("#cmbstate").show(); 
            $("#cmbstate").select();
        }

        else {
            $("#cmbstate").hide();
        }
    });
}).change();   });

focus()更改为select()

我曾经在我的项目中做过这件事,这对我有用。