【问题标题】:Gridview RadioButtonList Validation using javascript使用 javascript 的 Gridview RadioButtonList 验证
【发布时间】:2016-11-16 07:42:16
【问题描述】:

当用户单击该按钮时,应选择所有单选按钮列表,然后只有 Button应该提交事件。

下面是我的网格视图RadioButtonList

<asp:TemplateField HeaderText="Add Score">
<ItemTemplate>

<asp:RadioButtonList ID="RadioButtonList1" runat="server" CssClass="cssrbt">
<asp:ListItem Text="Correct" Value="1"></asp:ListItem>
<asp:ListItem Text="Wrong" Value="2"></asp:ListItem>
</asp:RadioButtonList>

</ItemTemplate>
</asp:TemplateField>

下面是我使用gridview外侧的按钮。

<asp:Button ID="btn_Submit" runat="server" class="btn btn-md btn-danger" Text="Submit" OnClick="btn_Submit_Click"  ValidationGroup="viva" />

我的问题是没有选择插入所有网格视图数据并且我想验证。

【问题讨论】:

  • 这个问题不清楚。您已将其标记为 javascript / jquery,到目前为止,没有 javascript 问题。
  • 您好,我正在使用下面的答案 java 脚本,您能帮忙解决这个问题吗,请查看下面的答案。 @mcNets

标签: javascript c# jquery asp.net gridview


【解决方案1】:

您可以将 javascript 客户端事件绑定到按钮并迭代每个单选按钮列表以验证是否选择了至少一个单选按钮。

$('<%= btn_Submit.ClientID %>').click(function(){
  $('.cssrbt').each(function(){
    if($(this).find(':radio:selected').length == 0)
         console.log("One of radio button list option must be selected")
  });
});

【讨论】:

  • 等等我在开玩笑。 @阿迪尔
  • 我没有收到任何消息,直接提交没有验证同样的问题,我正在使用母版页的内容页面。 @阿迪尔
  • 我收到此错误:未捕获的 ReferenceError:$ 未定义(…)。 @阿迪尔
  • 在你的页面中包含最新的 jQuery
  • 我添加了这个脚本然后也没有任何警报出现:
【解决方案2】:

adil 给出的例子需要 JQuery 库来实现,如果你不想使用任何库,只有 javascript 你可以像这样验证

 <form runat="server" id="form1" action="Test.aspx.cs">

    <asp:TemplateField HeaderText="Add Score">
<ItemTemplate>

<asp:RadioButtonList ID="RadioButtonList1" runat="server" CssClass="cssrbt">
<asp:ListItem Text="Correct" Value="1"></asp:ListItem>
<asp:ListItem Text="Wrong" Value="2"></asp:ListItem>
</asp:RadioButtonList>


</ItemTemplate>
</asp:TemplateField>


          <asp:Button ID="btn_Submit" runat="server" class="btn btn-md btn-danger" Text="Submit" OnClientClick="return Validate('RadioButtonList1')" OnClick="btn_Submit_OnClick"  />

    </form>


    <script language="javascript" type="text/javascript">
                function Validate(id) {
                    var radiobutton = document.getElementsByName(id);
                    var flag;
                    for (var j = 0; j < radiobutton.length; j++) {
                        if (radiobutton[j].checked !== true) {
                            flag = true;
                        } else {
                            break;
                        }


                    }

                    if (flag) {
                        alert("Please select one option");
                        return false;

                    } 
                }
            </script>

【讨论】:

  • 我在上面的问题中告诉过你,按钮在 gridview 之外而不是在 gridview 内部。 @Usman
  • 我确实更新了答案,并且按钮现在位于网格视图之外,正如您在代码中看到的那样
  • 我已经尝试过了,但不工作的事件警报也没有出现。 @Usman
  • 没有显示错误,还有一个认为我想告诉 gridview 和按钮应该在更新面板中?因为页面正在加载。 @Usman
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-08-25
  • 1970-01-01
  • 1970-01-01
  • 2016-06-14
  • 1970-01-01
  • 2020-05-27
  • 1970-01-01
相关资源
最近更新 更多