这是这里的 Jsp 代码,我将使用 javascript 和 ajax 验证我的类别名称,当我按下提交按钮时,它会要求显示类别名称很好,但就像我通过使用 ajax 调用它来验证类别名称的唯一性一样将在蓝色和第一次提交按钮按下时检查唯一性,当我第二次按下时它将转到主 url
<form name="frm" action="createnewcatgoryBean.jsp" method="post">
<table style="padding: 5px 0px 0px 8px;">
<tr>
<th colspan="2">
<div style="width: width:271px; color:red;" id="validate"></div>
</th>
</tr>
<tr>
<th>Category Name<span>:</span></th><td><input id="cat" onblur="return validatenewcat()" type="text" name="category">
</td>
</tr>
<tr>
<th>Quotations form<span>:</span></th><td><input type="checkbox" name="quotations"></td>
</tr>
<tr>
<th>Agreement form<span>:</span></th><td><input type="checkbox" name="agreement"></td>
</tr>
<tr>
<th>Payment form<span>:</span></th><td><input type="checkbox" name="payment"></td>
</tr>
<tr>
<th>ETI<span>:</span></th><td><input type="checkbox" name="eti"></td>
</tr>
<tr>
<td colspan="2" style="float:right; padding-top:15px">
<input type="submit" value="Submit" onclick="return validatenewcat()" style="width: 60px;">
</td>
</tr>
</table>
</form>
这是我的 ajax 调用脚本和 javascript
function validatenewcat()
{
var category = document.getElementById("cat").value;
if(category=="")
{
setTimeout(document.getElementById("validate").innerHTML="!PLz Enter The Category Name", 2000);
return false;
}
else
{
var url="catnamecheck.do?id="+category;
xmlhttp.open("post", url,true);
xmlhttp.send(null);
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4)
{
if(xmlhttp.status==200)
{
var temp = xmlhttp.responseText;
if(temp!="")
{
document.getElementById("validate").innerHTML="!PLz Enter The Unique Category Name";
document.getElementById("cat").focus();
return false;
}
}
}
}
}
}
这是我的java代码
public Map<String, String> catuniqecheck(String id) {
Connection c = null;
PreparedStatement ps1 = null;
ResultSet rs1 = null;
String sql=null;
try{
c = JDBCHelper.getConnection();
if(c!=null)
{
Map<String, String> map = new HashMap<String, String>();
sql="select * from catgory where catgoryname=?";
ps1=c.prepareStatement(sql);
ps1.setString(1, id);
ps1.execute();
rs1=ps1.getResultSet();
if(rs1.next())
{
System.out.println("insdide of the catuniqecheck");
map.put("catgoryname",rs1.getString("catgoryname"));
JSONObject json = new JSONObject();
json.accumulateAll(map);
}
return map;
}
else
{
System.out.println("DB connection Established");
return null ;
}
}
catch (Exception e) {
// TODO: handle exception
return null ;
}
finally{
JDBCHelper.close(rs1);
JDBCHelper.close(ps1);
JDBCHelper.close(c);
}
}
这是我的 servlet 代码
System.out.println("inside success");
JSONObject json = new JSONObject();
json.accumulateAll(result);
response.setContentType("application/json");
response.getWriter().write(json.toString());
当我第二次按提交时,它会转到另一个网址,请帮助我,谢谢