实际上我已经阅读了一段时间,但我无法理解它。 这是Servlet的一小部分" ProcessNurseApp" :
if (dbm.CheckExRegNumber(Candidate.getRegNumber()) == true) {
// Show him an alert and stop him from applying.
out.println("<script>\n"
+ " alert('You already Applied');\n"
+ "</script>");
out.println("<script>\n"
+ " window.history.go(-1);\n"
+ "</script>");
}
所以当表单名为&#34; ApplicationForm&#34;在&#34; Nurses.jsp&#34;得到提交后,它会在一些Javascript验证后转到servlet中的那个方法。
我的问题是我想调用该方法
if (dbm.CheckExRegNumber(Candidate.getRegNumber()) == true)
在JSP页面中没有访问servlet所以我可以在不刷新页面的情况下更新值。我一直在阅读使用带有jQuery的ajax将是最好的方法,所以任何人都可以帮助我通过AJAX从jQuery调用上面的if语句。
答案 0 :(得分:1)
尝试对servlet进行ajax调用(不可调用servlet),检查函数是返回true还是false,然后根据值返回一个标志(true或false)。在此基础上,您可以显示警报或其他任何内容。
对于ajax调用,您可以使用:
$.post( "ajax/Servlet_Url", function( data ) { if(data==true) alert("You already Applied"); else window.history.go(-1);});
有关jQuery帖子请求的详细信息,请参阅以下链接。
答案 1 :(得分:-1)
jQuery(document).ready(function($) {
$("#searchUserId").attr("placeholder", "Max 15 Chars");
$("#searchUserName").attr("placeholder", "Max 100 Chars");
$.ajax({
url:"../../jsp/user/userMaster.do",
data: { drpType : 'userType',lookType : "1" },
success: function (responseJson) {
var myvalue = document.getElementById("userTypeKey");
for(var val in responseJson)
{
valueType = val;
textOptions = responseJson[val];
var option = document.createElement("option");
option.setAttribute("value",valueType);
option.text = textOptions;
myvalue.add(option);
if(valueType == myvalue.value)
{
option.selected = "selected";
}
}
}
});
});