隐藏的剃刀输入的ng模型不起作用

jao*_*jao 3 asp.net-mvc razor angularjs asp.net-mvc-5

在我的MVC 5 Razor视图中,我创建了一个隐藏字段,如下所示:

@Html.HiddenFor(x => x.FormData.UserId,
                new { ng_model = "selectedEmployee.userId" })
Run Code Online (Sandbox Code Playgroud)

当我执行必要的角度动作来填充selectedEmployee.userId属性时,隐藏的输入值不会被填充.

但是,当我改变它

@Html.TextBoxFor(x => x.FormData.UserId,
                 new { ng_model = "selectedEmployee.userId" })
Run Code Online (Sandbox Code Playgroud)

它正在工作,数据被发布到服务器.

<input type="hidden" name="FormData.UserId" value="{{selectedEmployee.userId}}">
Run Code Online (Sandbox Code Playgroud)

正在工作,但是

@Html.HiddenFor(x => x.FormData.UserId,
              new { value = "{{selectedEmployee.userId}}" })
Run Code Online (Sandbox Code Playgroud)

不是.(这可能与Razor覆盖HTML值有关)

在Razor中,使用ng-model的隐藏输入不起作用的原因是什么?

syl*_*ter 8

请将值更改为ng_value

@Html.HiddenFor(x => x.FormData.UserId,
              new { ng_value = "{{selectedEmployee.userId}}" })
Run Code Online (Sandbox Code Playgroud)