Получить значение, установленное через Javascript в функции HTTP Post
Я пишу интернет-приложение MVC5 и хотел бы узнать, как установить значение в Javascript
в View
которые можно найти в View's
HTTP Post
метод.
Я пробовал это View
код:
<input type="hidden" id="testHiddenField" value="test" />
С этим Javascript
код:
$("#testHiddenField").val("test value set");
Однако в HTTP Post
Метод, я не уверен, как получить это значение.
Если приведенный выше код неверен, каков наилучший способ получить значение, установленное с помощью Javascript
в MVC View
в HTTP Post
функция для View
?
Заранее спасибо.
2 ответа
Вы можете попытаться восстановить значение одним нажатием кнопки "Отправить", или, если в вашей модели определено "testHiddenField", вам нужно добавить атрибут name для ввода, например:
при условии, что ваше свойство в модели называется testHiddenField
public String testHiddenField;
при восстановлении в посте не забудьте поставить имя в атрибуте
<input type="hidden" id="testHiddenField" value="test" name="testHiddenField"/>
быть признанным в вашей модели, если не установить модель. Там будет признано
другое решение - бритва:
@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"/>
заметьте, я добавил атрибут name в ваш код. делай то же, что и в 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
}
если есть какие-либо проблемы, свяжитесь со мной С уважением.