2012-03-15 69 views
1

專家你好,請參見下面的代碼:單選按鈕具有價值雖然沒有選擇

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> 
    <ContentTemplate> 
     <table border="1" cellpadding="8" cellspacing="0" width="700px" style="background-color: Aqua"> 
      <tr> 
       <td style="direction: rtl"> 
        &nbsp; 
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
       </td> 
       <td style="direction: ltr"> 
        F1     </td> 
      </tr> 
      <tr> 
       <td style="direction: rtl"> 
        <asp:DropDownList ID="Drp_1" runat="server" ClientIDMode="Static"> 
         <asp:ListItem Value="1">Head of household</asp:ListItem> 
         <asp:ListItem Value="2">Spouse</asp:ListItem> 
         <asp:ListItem Value="3">Child</asp:ListItem> 
        </asp:DropDownList> 
       </td> 
       <td> 
        F2 
       </td> 
      </tr> 
      <tr> 
       <td style="direction: rtl"> 
        <asp:RadioButtonList ID="Rad_7" runat="server" ClientIDMode="Static"> 
         <asp:ListItem Text="1" Value="1"></asp:ListItem> 
         <asp:ListItem Text="2" Value="2"></asp:ListItem> 
         <asp:ListItem Text="3" Value="3"></asp:ListItem> 
         <asp:ListItem Text="4" Value="4"></asp:ListItem> 
        </asp:RadioButtonList> 
       </td> 
       <td> 
        F3 
       </td> 
      </tr> 
      <tr> 
       <td> 
       </td> 
       <td> 
        <asp:Button ID="btn" runat="server" Height="44px" Text="Submit" ClientIDMode="Static" 
         Width="207px" /> 
       </td> 
      </tr> 
     </table> 
    </ContentTemplate> 
</asp:UpdatePanel> 
<asp:UpdateProgress ID="UpdateProgress1" runat="server"> 
    <ProgressTemplate> 
     <h1 style="color: Green"> 
      Progress ... 
     </h1> 
    </ProgressTemplate> 
</asp:UpdateProgress> 

,我用這個jQuery代碼:

<script type="text/javascript"> 

    function pageLoad() { 
     $(document).ready(function() { 
      $("#Drp_1").on("change", function() { 
       if ($(this).val() != null && $(this).val() == 2) { //<<<<< This Line 
        if ($('#Rad_7 input').val() != null && $('#Rad_7 input').val() > 1 && $('#Rad_7 input').val() != 2) { 
         alert('Wrong option'); 
        } 
       } 
      }).change(); 
     }); 
    } 
</script> 

的問題是,當我在指定的腳本中使用斷點行,當我使用立即窗口代碼$('#Rad_7 input').val()它返回1雖然我不選擇任何選項Rad_7。我的錯誤在哪裏?如果檢查與否

感謝

回答

2

$('#Rad_7 input').val()將獲得第一個單選按鈕的value不管。由於第一個單選按鈕的值爲1,因此您會看到相同的結果。

要獲得選中的單選按鈕值,請使用此值。

$('#Rad_7 input:checked').val(); 

如果組中沒有一個單選按鈕被選中,則它會給出undefined

+0

我如何獲得選定的值? – Arian 2012-03-15 19:57:40

+0

檢查我編輯的答案。 – ShankarSangoli 2012-03-15 19:59:59