C# ASP.Net MVC6复选框值到控制器
我正在尝试自己创建一个复选框,当它被单击时,它将根据结果向控制器发送一个true或false值,它将添加或删除该用户ID,并基于此返回结果。我没有使用一个模型,我不想有一个按钮,只要点击提交请求 到目前为止,我已经: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> }
@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;
}
});
});