我正在构建一个ASP.NET MVC Web应用程序,并有一个问题:
假设我有一个强类型视图,当点击提交时,对象(强类型)将被填充并发送到服务器。
现在说在表单中没有使用强类型的其中一个属性,而是如果用户按下按钮(不是提交按钮),我需要使用javascript设置它。
我该怎么做?
答案 0 :(得分:2)
据我了解,你想在按下按钮时为属性赋值?
将其添加为隐藏输入(示例使用Razor视图引擎):
@Html.HiddenFor(model => model.TheProperty)
创建一个小的jquery脚本:
<script type="text/javascript">
$('document').ready(function(){
// this is the id of the button that the user presses.
// It must have a "ID" attribute
$('#someButtonId').click(function() {
$('#TheProperty').val('Value to set');
});
});
});
</script>
答案 1 :(得分:1)
您可以使用AJAX通过javascript向服务器发送请求。 jQuery有很好的方法,例如$.ajax
,$.post
,$.get
。例如:
$(function() {
$('#someButtonId').click(function() {
// when some button is clicked send an AJAX request:
$.ajax({
url: '/home/someaction',
data: { someField: 'some value to send' },
success: function(result) {
alert('value successfully sent to server');
}
});
});
});