2013-02-15 1 views
0

У меня есть формаJQuery onsubmit не работает

<form id="formModLezione" method="post"> 

сейчас я пытаюсь сделать это:

var messaggio=""; 
var url = "EsistonoIscritti"; 
var xmlHttp = new XMLHttpRequest(); 
xmlHttp.open("POST", url, false); 
xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 
xmlHttp.send("id="+id); 
xmlHttp.onreadystatechange = function() { 
    if (xmlHttp.readyState == 4) // COMPLETED 
{ if (xmlHttp.status == 200) // SUCCESSFUL 
     {var str = xmlHttp.responseText; 
     if (str.localeCompare("ko") != 0) {//ci sono utenti iscritti 
      var utenti=JSON.parse(str); 
      messaggio+="A questa lezione sono iscritte le seguenti persone, avvertile!\n"; 
     for(var i=0;i<utenti.length;i++){ 
     messaggio+=(i+1)+") "+utenti[i].nome+" "+utenti[i].cognome+" Tel."+utenti[i].telefono+"\n"; 
     } 
     messaggio+="Vuoi procedere?"; 
     alert("messaggio"); 
     } 
    } else { 
     alert("An error occurred while communicating with the server."); 
      } 
    } 
}; 
$("#formModLezione").on("submit","return confirm('"+messaggio+"');"); 
$("#formModLezione").attr("action","ModificaLezione?id="+id); 

При нажатии на кнопку отправки формы призыв к сервлет ModificaUtente работает, но не показывает мне никаких предупреждений! Кто-нибудь знает почему? спасибо!

+4

если вы используете JQuery, почему бы вам не использовать встроенный 'Аякса)' функцию (? – martincarlin87

+0

@ martincarlin87 Я использую вызов ajax только для создания переменной messaggio. Хорошо, я должен использовать функцию ajax, но она не будет работать так хорошо? – Martina

+0

Нет, это просто гораздо проще, используя функцию jquery, вместо того, чтобы делать это по-старому, который вы используете сейчас. – martincarlin87

ответ

0

Не уверен, что есть проблема синтаксиса, но что-то вроде этого, может быть?

$("#formModLezione").on("submit", function(){ 
    confirm(messagio); 
}); 
0

попробовать

$("#formModLezione").bind("submit", function(e){ 
    e.preventDefault(); 

    confirm(messagio); 
});