【发布时间】:2017-01-31 06:32:29
【问题描述】:
我有一个问题,我需要调用 jQuery 代码从 HTML 元素中获取值,如下所示:
@using (Html.BeginForm("Login", "Home",new { Checked = $('#checkbox5').checked }, FormMethod.Post,new { @class = "form-horizontal", role = "form" }))
{
@Html.AntiForgeryToken()
}
请注意,除了将整个模型传递给我的登录操作之外,我还尝试传递一个名为“Checked”的可选参数。这个参数基本上说明了表单上的“记住我”复选框是否被选中。
复选框本身不是 .NET 默认使用的复选框,例如:
@Html.CheckboxFor(somepropertyhere);
而是像这样的常规复选框:
<input id="checkbox5" type="checkbox">
<label for="checkbox5">
Remember me?
</label>
当我将它作为模型之外的额外参数传递时,如何获取此复选框的值?
所以我的方法最终看起来像:
Public ActionResult Login(bool Checked, LoginViewModel model)
{
// To have the checked value here now...
}
附:而且由于某些原因,我不能使用 Html.CheckboxFor ,但我不想过多介绍细节,因为那时这个问题没有意义(也许它甚至现在都没有,我不确定这是否可行我想要达到的目标)。
谁能帮帮我?
【问题讨论】:
-
P.S.伙计们,它不一定是布尔值,重要的是我在动作中得到“真”或“假”值......
-
@charlietfl 你能说得更具体点吗?
-
如果你想发送任何变量,你应该为字段设置名称,在服务器端你可以用名称调用它
-
各位大神可以举个例子回答一下吗?我不太确定如何做这些
-
从
BeginForm(...)中删除new { Checked = $('#checkbox5').checked }(这没有意义)并为您的复选框提供name属性(表单仅回发成功控件的名称/值对)-使用@ 987654328@ 但这永远不会为您提供正确的 2-way 模型绑定和验证,尤其是在您需要返回视图时。
标签: javascript jquery asp.net-mvc razor checkbox