我建立一个ASP.NET MVC web应用,并有一个问题:从JavaScript将数据发送到服务器
说,我有一个强类型的视图,击中时提交对象(属于强类型)将被填充并发送到服务器。
现在说,强类型的属性之一没有在窗体中使用,而是我需要设置此JavaScript如果用户按下按钮(不提交按钮)。
我该怎么做?
我建立一个ASP.NET MVC web应用,并有一个问题:从JavaScript将数据发送到服务器
说,我有一个强类型的视图,击中时提交对象(属于强类型)将被填充并发送到服务器。
现在说,强类型的属性之一没有在窗体中使用,而是我需要设置此JavaScript如果用户按下按钮(不提交按钮)。
我该怎么做?
据我所知,当按钮被按下时,你想给属性赋值?
添加它作为一个隐藏的输入(示例使用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>
您可以使用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');
}
});
});
});
对不起,我是maby不清楚。问题不在于使用javascript提交,而是在提交完成时将对象返回给服务器的属性。 – Banshee 2011-01-12 08:31:48
这看起来格栅,我会试试这个,让你知道它是否有效。 – Banshee 2011-01-12 08:28:02