在 HTTP Post 函数中获取通过 Javascript 设置的值

Get a value set via Javascript in a HTTP Post function

我正在编写 MVC5 互联网应用程序,想知道如何在 View 中设置 Javascript 中的值,该值可以在 View's [=17= 中检索]方法。

我试过这个View代码:

<input type="hidden" id="testHiddenField" value="test" />

使用此 Javascript 代码:

$("#testHiddenField").val("test value set");

但是,在 HTTP Post 方法中,我不确定如何检索此值。

如果上面的代码不正确,检索通过 JavascriptHTTP Post 函数的 MVC View 中设置的值的最佳方法是什么 View?

提前致谢。

你可以尝试在点击按钮提交时恢复值,或者如果 'testHiddenField' 在你的模型中定义,你需要输入输入的名称属性,例如:

假设您的 属性 在模型中称为 'testHiddenField'

public String testHiddenField;

在post恢复的时候,别忘了把名字放在属性里

<input type="hidden" id="testHiddenField" value="test" name="testHiddenField"/>

要在你的模型中识别,如果没有设置模型。会有认可

另一个解决方案是 Razor:

@Html.HiddenFor(input => input.testHiddenField, new {@value="test"})

或单击您的按钮提交表单:

<button type="submit" id="btn" value="POST">
<script>
   $('#btn').click(function(){
    $('#testHiddenField').val();
});
</script>

简单的方法是:

1- 在您的 html 代码中。

<input type="hidden" name="testHiddenField" id="testHiddenField" value="test" name="testHiddenField"/>

注意我在您的代码中添加了名称属性。 以同样的方式javascript做你在

做的事

2- 在 mvc 操作中通过将 testHiddenField 作为参数添加到您的操作中来做一些类似的事情这将使 mvc 执行我们所谓的模型绑定器

[HttpPost]
public ActionResult YourAction (string testHiddenField){
// break point here you will find your value is bind to what you set in javascript to view
}

有问题联系我 问候。