Избегая перехода на следующий URL-адрес, пока имя категории не станет уникальным

Это код Jsp здесь, я собираюсь проверить имя моей категории, используя javascript и ajax, когда я нажимаю кнопку отправки, она будет запрашивать имя категории на дисплее в порядке, но то же самое, что и я, проверяя название категории уникальным, используя ajax call it будет проверять уникальность, когда на bluer и в первый раз отправить кнопку нажмите, когда я нажму второй раз, он перейдет к основному URL-адресу

<form name="frm" action="createnewcatgoryBean.jsp" method="post">
 <table>
 <tbody><tr>
 <th colspan="2">
 
 </th>
 </tr>
 <tr>
 <th>Category Name<span>:</span></th><td>
 </td>
 </tr>
 <tr>
 <th>Quotations form<span>:</span></th>
 </tr>
 <tr>
 <th>Agreement form<span>:</span></th>
 </tr>
 <tr>
 <th>Payment form<span>:</span></th>
 </tr>
 <tr>
 <th>ETI<span>:</span></th>
 </tr>
 <tr>
 <td colspan="2">
 
 </td>
 </tr>
 </tbody></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);
 }
}
</string,></string,></string,>

это мой код сервлета

System.out.println("inside success");
 JSONObject json = new JSONObject();
 json.accumulateAll(result);
 response.setContentType("application/json");
 response.getWriter().write(json.toString());

когда я нажимаю кнопку отправки второй раз, она идет к другому url plz, помогите мне поблагодарить u

2 ответа

Надеюсь, это проблема, с которой вы столкнулись

<form name="frm" action="createnewcatgoryBean.jsp" method="post" onsubmit="return validatenewcat()">
 <table>
 <tbody><tr>
 <th colspan="2">
 
 </th>
 </tr>
 <tr>
 <th>Category Name<span>:</span></th><td>
 </td>
 </tr>
 <tr>
 <th>Quotations form<span>:</span></th>
 </tr>
 <tr>
 <th>Agreement form<span>:</span></th>
 </tr>
 <tr>
 <th>Payment form<span>:</span></th>
 </tr>
 <tr>
 <th>ETI<span>:</span></th>
 </tr>
 <tr>
 <td colspan="2">
 
 </td>
 </tr>
 </tbody></table>
 </form>

использовать при отправке в теге формы, а не на щелчке в типе отправки


var cat_array = new array();
 var i=0;
function validatenewcat()
 {
 var is_dup_cat=false;
 var category = document.getElementById("cat").value;
 if(cat_array.length>=1){
 for(var j=0;j

licensed under cc by-sa 3.0 with attribution.