【发布时间】:2015-04-08 20:15:49
【问题描述】:
在我的 JSP (index.jsp) 中,我提交了一个使用 JSON 将参数传递给另一个 JSP (action.jsp) 的表单。
<form id="form">
<input type="text" name="name"/>
<input type="button" id="btn" value="OK"/>
</form>
这里是 index.jsp 的 Jquery 代码:
$(document).ready(function(){
$("#btn").click(function(){
var name = $("input[name=name]").val();
$.ajax({
cache:false,
url:"action.jsp",
data:{name:name},
contentType:"application/json; charset=utf-8",
dataType:"json",
success:function (msg) {
alert("SUCCESS");
// here I want a String that is
// generated(generatedString) in action.jsp.
});
}
},
error:function () {
alert("Unable to add.");
}
});
});
});
我的 action.jsp 代码:
<%
String name = request.getParameter("name");
String generatedString = "E5142";
response.setContentType("application/json");
out.print(generatedString);
%>
表单提交到action.jsp成功,但无法返回index.jsp中的'generatedString'值。
更新:index.jsp 总是在警报中显示错误:“无法添加。” 尝试了cmets中所说的,但没有提出成功的信息。
【问题讨论】:
-
我不知道 JSP,但看起来您只是在定义变量而不是打印它们?你需要打印出json中的字符串。
-
在 action.jsp 中,尝试添加另一行
out.print(generatedString)。然后在您的success回调中将alert("SUCCESS")替换为alert(msg) -
看到这个similar question
-
试过但没用;
-
可能是网址错误,这就是您收到错误消息的原因。让用户知道 action.jsp 与 index.jsp 处于同一级别(文件夹)