如果我在内部剃刀视图中已经定义了隐藏字段,如
@Html.HiddenFor(m => m.MyHiddenId)
如何从内联js代码
填充此内容var someNr = 100;
如何将这个someNr值赋给m.MyHiddenId属性?
答案 0 :(得分:17)
向id
@Html.HiddenFor
属性
@Html.HiddenFor(m => m.MyHiddenId, new { id = "hat" })
然后使用jQuery:
var someNr = 100;
$('#hat').val(somNr);
对于那些没有jQuery的人
document.getElementById("hat").value = somNr;
根据以下答案,如果没有明确的ID,HiddenFor
会将属性ID设置为MyHiddenId
。所以,这也会起作用:
var someNr = 100;
$('#MyHiddenId').val(someNr);
或者没有jQuery:
document.getElementById("MyHiddenId").value = somNr;
答案 1 :(得分:2)
MVC会将该字段的ID设为“MyHiddenId”
因此,对于Jquery,您可以按如下方式设置它:
$("#MyHiddenId").val(someNr);
答案 2 :(得分:1)
您可以使用:
$(function(){
var someNr = 100;
$('#MyHiddenId').val(someNr);
});
注意:强>
$('#MyHiddenId').val(someNr);
,它应该在你的html标签创建后的某个地方,否则它看不到隐藏。MyHiddenId
,您无需手动设置。答案 3 :(得分:1)
首先,你需要assign ID
来控制你,你知道control ID at compile time
。
@ Html.HiddenFor(m => m.MyHiddenId,new {id =" MyHiddenId"})
Jquery Code:-
var someNr = 100;
$(' #MyHiddenId).VAL(somNr);
JavaScript Code:-
var someNr = 100;
document.getElementById(' MyHiddenId')。value = somNr;