0

我是 asp.net mvc 的新手,目前正在使用 MVC 2。我现在正在努力使用复选框。我只需要将选中的复选框值保存在数据库中,然后在编辑视图中检查它们。

<input type="checkbox"  id="coduit for safety near motor" name="Prepration" value="coduit for safety near motor"/><br />
<input type="checkbox" id="coduit for far side safety" name="Prepration" value="coduit for far side safety"/><br />
<input type="checkbox" id="coduit for power cable to near power point" name="Prepration" value="coduit for power cable to near power point"/><br /> 

在后控制器方法上,我可以通过使用将选中的复选框的值作为逗号分隔的字符串保存到数据库中

strign a= = Request.Form["Prepration"];

如何在编辑视图中显示它们?

我不知道这是否是这样做的方法任何替代解决方案都会很棒

4

2 回答 2

1

你的第一个问题的答案:

需要将选中的复选框值保存在数据库中

在按钮上单击推送数组中的所有值,然后将它们存储在隐藏字段中,当您发布表单时,从该隐藏字段中获取这些值:

    <script type="text/javascript">
     $(document).ready(function () {
         $("input#btnSubmit").click(function () {
         var id = [];
         $("input[name='Prepration']:checked").each(function () {
         id.push($(this).val());
    });
    $("#HiddenFieldId").val(id);
         });
    });
    </script>

现在来回答你的第二个问题:

如何在编辑视图中显示它们?

<input type="radio" id="a" name="Prepration" checked="@Model.BoolPropertyName" />

在这里你可以有布尔值。

希望这会帮助你。

于 2013-05-18T11:51:01.140 回答
0

你可以客户端解决方案,

var data="";
$.each($("input:checkbox"),function(){
    if($(this).is("checked")){
        data+= $(this).val();
    }
});

// post here
于 2013-05-18T07:45:09.733 回答