繁体   English   中英

按钮勾选多个单选按钮

[英]Button to tick multiple radio buttons

我有一个.NET MVC项目,其中的视图中有多个单选按钮,这些单选按钮绑定到SQL表中的唯一项。 这是我的“查看”页面中的代码块,该代码块为每一行生成两个单选按钮。

@foreach(var item in Model){
@Html.RadioButton(item.ReviewID, "Retain")Retain  
@Html.RadioButton(item.ReviewID, "False")Remove

}

在整个列表下方,我有两个要尝试使用的按钮,它将选中所有相应的单选按钮。

<input type="button" value="Retain All" onclick="retainAll()" />
<input type="button" value="Retain All" onclick="removeAll()" />

我试图调用我在视图中声明的这两个助手:

@helper retainAll()
{
    foreach (var item in Model)
    {
        @Html.RadioButton(item.ReviewID, "Retain", isChecked: true);
    }
}

@helper removeAll()
{

    foreach (var item in Model)
    {
        @Html.RadioButton(item.ReviewID, "Remove", isChecked: true);
    }

}

当我尝试单击任何按钮时,它什么也没做。 这是我的视图中的样子:

https://imgur.com/a/uPxgvKv

请注意,那里的保存更改按钮起作用。 单击时,它会通过单击单选按钮来更新SQL数据库。

使用“全部保留”和“全部删除”按钮的想法只是用保留或删除标记所有单选按钮。

**同样,我不是在问如何将单选按钮的值回发到我的sql表中。 只是问是否有办法在视图中单击“全部保留”或“全部删除”按钮,它将在视图中打勾所有相应的单选按钮。(将其“ isChecked”属性设置为true)

删除了我视图中的帮助程序代码块,并将其替换为:

<script>
function retainAll()
{
    @foreach (var item in Model)
    {
        @Html.RadioButton("rbResponse" + item.ReviewItemID.ToString(), "Retain", isChecked: true);
    }
}

function removeAll()
{
    @foreach (var item in Model)
    {
        @Html.RadioButton("rbResponse" + item.ReviewItemID.ToString(), "Remove", isChecked: true);
    }

}
</script>

我终于想出了解决方案。 我在View中制作了一个脚本,如下所示:

<script type="text/javascript">

        $(document).ready(function () {
            $("#selectRetain").click(function () {
                $('input:radio[value=Retain]').prop('checked', true);
            });

            $("#selectRemove").click(function () {
                $('input:radio[value=Remove]').prop('checked', true);
            })
        });        
    </script>

并这样改变我的按钮:

<input type="button" value="Retain All" id='selectRetain'>
<input type="button" value="Retain All" id='selectRemove'>

现在,只要我选择这些按钮中的每个按钮,它们就会将页面中单选按钮的isChecked值更改为true。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM