2013-03-01 181 views
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(); 
     } 
    }); 
+0

可你也發表您的HTML中的jsfiddle? – Whizkid747 2013-03-01 23:16:36

+0

什麼部分不起作用?顯示/隱藏還是隻有焦點? – bmavity 2013-03-01 23:20:36

回答

0

This works。你的錯誤在你的代碼中的其他地方。可能在你的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/