我有一个部分视图,其中包含使用ajax.begin form创建的表单。
在我的控制器
我正在使用表单的
@using (Ajax.BeginForm("Save", "saveStuffHere", null, new AjaxOptions
{HttpMethod = "Post", InsertionMode = InsertionMode.InsertAfter,
OnSuccess = "handleSuccess", OnFailure = "handleError"}))
{
在我的控制器
saveStuffHere
中,我有一个名为Save
的方法。public class saveStuffHereController : Controller
{
....other things...
/// <summary>
/// Save the information
/// </summary>
/// <returns></returns>
[HttpPost]
public JsonResult Save(I do not know what is passed here)
{
.... db code goes here
}
我正在使用表单的
submit()
方法保存表单。如果我在控制器中调用该方法错误,请纠正我。但我的问题是,到底发送了什么?换句话说,我的Save
方法应该期望什么?
基本上,我不知道我的Save
方法传递了什么。是否有一种方法可以指定我要传递的内容?我理解并知道如何使用jquery ajax,但我想在转向jquery ajax之前尝试这种方法。
submit()
功能,我对发送的内容没有控制权,对吗?或者我可以使用 onBegin 来修改要发送的内容吗?因为并不是所有东西都需要被发送,而使用 jQuery 的 ajax 可以让我挑选。 - Jack Thor.submit()
是同步回传,而不是 Ajax ... 所以我不确定为什么你会使用它。但我看到你是对的,使用Ajax.BeginForm
确实不能直接控制发送的内容,而使用 JQuery 的$.post
,你可以直接将要发送的数据作为选项哈希传递。 - McGarnagle