2015-07-30 6 views
0

Я не очень хорошо разбираюсь в jquery, и я пытаюсь предотвратить .net-форму от отправки, если пользователь выбирает Yes (1) в пути RadioButtonList. Ниже мой код, и я не знаю, почему он не работает.
Имя формы превращается в aspnetform при запуске приложения .net и radPathway RadioButtonList становится # ctl00 $ ContentPlaceHolder1 $ radPathway:Подтвердить значение RadioButtonList с помощью jQuery перед отправкой

<script> 
    $('#aspnetForm').submit(function() { 
     if ($('#ctl00$ContentPlaceHolder1$radPathway').val() === "1") { 
      alert('Stop!'); 
      return false; 
     } 
    }); 
</script> 

.aspx Код:

<p> 
    <asp:Label ID="Label23" runat="server" Font-Bold="True" 
     Text="Pathway member?"></asp:Label> 
    &nbsp; 
    <asp:RadioButtonList ID="radPathway" runat="server" RepeatDirection="Horizontal" Width="50px"> 
     <asp:ListItem Value="1">Yes</asp:ListItem> 
     <asp:ListItem Value="0">No</asp:ListItem> 
    </asp:RadioButtonList> 

    <asp:RequiredFieldValidator ID="RequiredFieldValidator17" runat="server" 
       ControlToValidate="radPathway" ErrorMessage="Please select your pathway status" ForeColor="red"> 
    </asp:RequiredFieldValidator> 

    <asp:Label ID="lblpathway" runat="server" ForeColor="Red" Text="Label" Visible="False"></asp:Label> 
</p> 

ответ

0

Здесь вы идете. Вот как вы должны определить значение проверяемого элемента. Замените «test» на элемент name в обоих элементах списка, которые вы видите при просмотре источника своей страницы.

function getCheckedRadio() { 
    var radioButtons = document.getElementsByName("test"); 
    for (var x = 0; x < radioButtons.length; x ++) { 
    if (radioButtons[x].checked) { 
     var selectedValue = radioButtons[x].value; 
    } 
    } 
} 

if (selectedValue == "1") { 
    //rockmysocks 
} 
Смежные вопросы