以下表单从视图发布到操作方法。 onclick()
事件调用jquery.ajax
并将数据(第一个div
的内容)传递给相同的操作方法。首先执行jquery.ajax
,然后提交表单提交。当表单提交时,如何获得pid的值(由jquery.ajax传递)?我需要像会话一样使用,不是吗?
查看:
<form id="newform" action="/ad/newad" method="post">
<div id="divAjax">
<p align="center" style="background: white; margin: 0cm 0cm 0pt;">Dan</p>
<p align="center" style="background: white; margin: 0cm 0cm 0pt;">
<b><span contenteditable="true"> CLICK TO CHANGE</span></b>
</p>
</div>
<div class=" content">
<input type="text" name="PName"/>
<input type="text" name="SName"/>
<input type="submit" value="Submit" id="btnSubmit" onclick="return updatePerson();" />
</div>
</form>
<script>
function updatePerson(){
$.ajax({
url : "/ad/newad",
type : "POST",
dataType : "json",
contentType : "application/json;",
data : "{ pid:'" + $("#divAjax").html() + "' }"
});
</script>
行动方法:
[HttpPost]
[ViewException]
[UserFilter(OpUserAuthType.Admin, OpUserAuthType.Normal)]
public ActionResult NewAd(string id, string pid, AdDetail model)
{
...
}
答案 0 :(得分:0)
我认为你只需要一个提交按钮 - 只需一个常规按钮。无论如何,您的表单会提交与您的ajax帖子相同的操作。我想也许您只需要在点击处理程序中一次发布所有数据,而不仅仅是您的pid,您可能不需要我认为的提交。
如果你需要在帖子发布后做某事,你可以使用ajax调用的success:或error:handler。