Asp.net 使用jquery在MVC中更改视图中元素的值
我有一个标签Asp.net 使用jquery在MVC中更改视图中元素的值,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,我有一个标签 @Html.Label("GetCheckboxDetail", new { @style = "display:none" , id = "CheckboxDetailFlag" , name = "GetCheckboxDetail" }) 在javascript中,我试图改变它 $(".LRequiredClass").live("click", function (event) { if ($(".LRequiredClass").is(":checked"))
@Html.Label("GetCheckboxDetail", new { @style = "display:none" , id = "CheckboxDetailFlag" , name = "GetCheckboxDetail" })
在javascript中,我试图改变它
$(".LRequiredClass").live("click", function (event) {
if ($(".LRequiredClass").is(":checked")) {
$("#CheckboxDetailFlag").val("LRequired True");
}
else {
$("#CheckboxDetailFlag").val("LRequired False");
}
});
在控制器请求[“GetCheckboxDetail”]
中,即使在标签中更改了值,也会返回null,请使用.text()
而不是.val()
。您可以更改标签的文本值,因此请使用text()
实际上代码是
if ($(".LRequiredClass").is(":checked")) {
$("#CheckboxDetailFlag").text("LRequired True");
}
else {
$("#CheckboxDetailFlag").text("LRequired False");
}
我发现了这个问题
我做了以下更改
查看
@Html.Text("GetCheckboxDetail", new { @style = "display:none" , id = "CheckboxDetailFlag" , name = "GetCheckboxDetail" })
Javascript和控制器代码保持不变,控制器能够从textbox获取数据。您使用的是什么jquery版本?1.8.3,如果我在那里发出警报,它会出现,但值没有改变标签不应该是
.text()
?标签没有值-它需要是$(“#CheckboxDetailFlag”)。text(…)
你到底为什么要给它命名属性一个抱歉的文本更改了值,我无法在控制器中得到它只需使用@Html.Hidden(“GetCheckboxDetail”)
并将脚本更改为$(“#GetCheckboxDetail”).val(…)
(或者更好的@Html.HiddenFor(m=>m.GetCheckboxDetail)
假设其为模型属性)
@Html.Text("GetCheckboxDetail", new { @style = "display:none" , id = "CheckboxDetailFlag" , name = "GetCheckboxDetail" })