在我的服务器中,我有以下代码:
response.getWriter().write(myJsonString);
response.setContentType("application/json;charset=UTF-8");
response.setHeader("Cache-Control", "no-cache");
return null;
如果我执行普通表单提交或 AJAX jQuery 提交,这会将 JSON 对象作为字符串返回(如在屏幕上显示)。但是,当我从http://jquery.malsup.com/form/#json的 malsup 示例中添加代码来处理响应时,我无法显示警报?我什至不知道是响应设置还是 jQuery 得到的不正确。
$('form[name=uploadForm]').submit(function() {
//ajax form submission
$('form[name=uploadForm]').ajaxSubmit({
// dataType identifies the expected content type of the server response
dataType: 'json',
// success identifies the function to invoke when the server response
// has been received
success: processJson
});
//cancels normal form submission
return false;
});
function processJson(data) {
// 'data' is the json object returned from the server
alert(data.message);
}
我对消除使用表单插件(即仅使用jQuery.post()
调用)的选项持开放态度。