Jquery 在MVC中获取所选单选按钮的值时遇到问题。首先列出的任何值都是我返回控制器的值。
我无法将所选单选按钮的值传递给控制器。我首先列出的任何单选按钮都是返回控制器的值。例如,始终返回“tst” 使用JQUERY查看Jquery 在MVC中获取所选单选按钮的值时遇到问题。首先列出的任何值都是我返回控制器的值。,jquery,asp.net-mvc,radio-button,Jquery,Asp.net Mvc,Radio Button,我无法将所选单选按钮的值传递给控制器。我首先列出的任何单选按钮都是返回控制器的值。例如,始终返回“tst” 使用JQUERY查看 <div class="atk-radio-center"> <div> @Html.RadioButtonFor(m => m.Impact, "tst", new { Checked = "checked" })
<div class="atk-radio-center">
<div>
@Html.RadioButtonFor(m => m.Impact, "tst", new { Checked = "checked" })
Yes
@Html.RadioButtonFor(m => m.Impact, "0")
No
</div>
</div>
<script>
$("#btnContinue").click(function () {
$.post("/Start/SaveServiceAffectd",
{
impact: $('#Impact').val(),
description: $('#Description').val(),
},
function (data) {
if (data == "true") {
} else {
}
});
});
视图模型
[Required(ErrorMessage = "Work Description is required")]
[Display(Name = "Description")]
public string Description { get; set; }
[Required(ErrorMessage = "Answer for Impact is required")]
public string Impact { get; set; }
这就是我需要将JQUERY更改为以传递正确值的地方选择选中的单选按钮。此外,不应重复ID。按照web标准,它们应该是独一无二的。改为使用类。更好的方法是将所有内容包装在一个表单中,并将表单发送给控制器。对于复选框和单选按钮,jquery form.serialize()将做正确的事情。如果要发布表单,则表单数据将只包括选中的值,通过
name=
属性(而不是通过id=
)。因为您是手动生成数据,所以需要模拟:$(“[name=Impact]:checked”).val()
@freedomn-m radiobutton用于创建具有name属性的正确html。您还可以使用“input:checked”作为选择器
[Required(ErrorMessage = "Work Description is required")]
[Display(Name = "Description")]
public string Description { get; set; }
[Required(ErrorMessage = "Answer for Impact is required")]
public string Impact { get; set; }
impact: $("input[name='Impact']:checked").val(),