Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.Net MVC6复选框值到控制器_C#_Asp.net Mvc_Checkbox - Fatal编程技术网

C# ASP.Net MVC6复选框值到控制器

C# ASP.Net MVC6复选框值到控制器,c#,asp.net-mvc,checkbox,C#,Asp.net Mvc,Checkbox,我正在尝试自己创建一个复选框,当它被单击时,它将根据结果向控制器发送一个true或false值,它将添加或删除该用户ID,并基于此返回结果。我没有使用一个模型,我不想有一个按钮,只要点击提交请求 到目前为止,我已经: @using (Html.BeginForm("Index", "Home", FormMethod.Post)) { <label>View All Tickets @Html.CheckBox("chkAllTickets")</label> }

我正在尝试自己创建一个复选框,当它被单击时,它将根据结果向控制器发送一个true或false值,它将添加或删除该用户ID,并基于此返回结果。我没有使用一个模型,我不想有一个按钮,只要点击提交请求

到目前为止,我已经:

@using (Html.BeginForm("Index", "Home", FormMethod.Post))
{
   <label>View All Tickets @Html.CheckBox("chkAllTickets")</label>
}
@使用(Html.BeginForm(“Index”,“Home”,FormMethod.Post))
{
查看所有票证@Html.CheckBox(“chkAllTickets”)
}
我只想寄回一些类似的东西 单击public ActionResult Index(bool Checked)和Checked时将保持true或false

我是否需要使用jQuery,或者它更简单,我只是缺少了一些东西。到目前为止,我做任何事情都很轻松,这给我带来了很多麻烦


提前谢谢

嗨,亚当,如果我正确理解了您的问题,这非常简单,也就是说,您可以在控制器操作方法中使用复选框的名称,并根据选中或未选中的情况获取true或false

ex:

 @using (Html.BeginForm("Index", "Home", FormMethod.Post))
    {
       <label>View All Tickets @Html.CheckBox("chkAllTickets")</label>
    }
Public class HomeController:Controller
{
   public actionresult Index(bool chkAllTickets)
    {
            //other logic
    }

}

注意:根据绑定到复选框的值,指定操作方法中的数据类型

我解决了复选框的问题

<div style="display:inline-block">
    <label style="margin-left:10px;">
        <span><label>View All Tickets @Html.CheckBox("chkAllTickets")</label></span>
    </label>
</div>

您的模型中是否有此属性的可能副本?这是一个类似的问题,但我也希望在单击复选框时提交。不,我不希望它出现在我的模型中,但我在控制器中的一个类中有它作为public bool chkaltickets{get;set;}现在您正在使用一个表单,这意味着表单需要提交(通常是单击“提交”按钮的结果),以便与服务器联系。从您的描述来看,您似乎希望在他们单击复选框时立即执行此操作,这意味着ajax调用更合适。
$(document).ready(function () {
        $('#chkAllTickets').on('change', function () {
            var theUrl = '';
            this.value = this.checked ? 1 : 0;
            if (this.value == 1)
            {
                theUrl = '@Html.Raw(Url.Action("Index", "Home", new { SortField = ViewBag.SortingPagingInfo.SortField, SortDirection = ViewBag.SortingPagingInfo.SortDirection, ChkAllTickets = true }))';
                window.location = theUrl;
            }
            else
            {
                theUrl =  '@Html.Raw(Url.Action("Index", "Home", new { SortField = ViewBag.SortingPagingInfo.SortField, SortDirection = ViewBag.SortingPagingInfo.SortDirection, ChkAllTickets = false }))';
                window.location = theUrl;
            }

        });
    });