在我的JSP页面中,我有一个表单和一些div
<form id="personDetail" name="personDetail" action="personDetail">
<!-- input fields -->
</form>
<div id="sucess"></div>
<div id="error"></div>
<div id="edit"></div>
<div id="input"></div>
我正在使用ajax调用来提交表单。
在我的动作类中,我有以下代码
ActionClas
if(condition1)
{
//processing statements
return "success";
}
else if(condition2)
{
//processing statements
return "error";
}
else if(condition3)
{
//processing statements
return "input";
}
else if(condition4)
{
//processing statements
return "edit";
}
Ajax调用
$(document).on('click', ".saveButton", function(){
var formId='personDetail';
var form = $("#"+formId);
form.submit(function ()
{
var urlAction=form.attr('action');
var dataFields=form.serialize();
$.ajax({
type: "post",
url: urlAction,
data: dataFields,
success: function (data) {
var ajaxResult= $('<div/>').html(data),
$ajaxContent = ajaxResult.find('#ajaxContent');
var ajaxActionResult=$('<div/>').html($ajaxContent);
$("#success").html(ajaxActionResult);
}
});
return false;
});
});
在struts.xml中,我已经为每个结果提到了一些JSP,它在Ajax中返回。
所有人都回归成功并获得HTML内容。我使用 id =“成功”设置为 DIV 。所以所有结果都设置为DIV。
我想在适当的div中显示每个结果。也就是说,如果动作类返回字符串是错误,我想将结果设置为Div,其中 id =“error”,如果它是输入 ,然后结果应设置为DIV, id =“input”,类似于其他人。
由于所有结果都在Ajax中恢复成功,因此在ajax中使用错误也没有意义。而且编辑和输入也是不可能的。
我怎样才能做到这一点?
由于
答案 0 :(得分:0)
请参阅:Getting return value from action with jquery.forms.js options...MVC3
PS:只需更改动作类以返回Json字符串..并在“afterSubmit”函数中使用该特定键(response.YOUR_KEY ==“YOUR_TEST_VALUE”)以获得所需的输出。