Я использую JQuery 1.3 для проверки и отправки формы на страницу PHP, которая JSON кодирует ответ сервера для отображения на исходной странице формы.
Я попытался отправить форму без части JQuery, и все, кажется, работает нормально, но когда я добавляю JQuery, она не отправляется и постоянно отображает индикатор ajax.
Вот мой код:
<br>
</p>
<p>$(document).ready(function(){</p>
<p>var options = {
target: '#messagebox',<br>
url: 'updateregistration.php',<br>
type:'POST',
beforeSubmit: validatePassword,
success: processJson,
dataType: 'json'<br>
};
$("form:not(.filter) :input:visible:enabled:first").focus();
$("#webmailForm").validate({</p>
<p>errorLabelContainer: "#messagebox",
rules: {
forename: "required",
surname: "required",
currentpassword: "required",
directemail: {
required: true,
email: true
},
directtelephone: "required"
},
messages: {
forename: { required: "Please enter your forename<br>" },
directemail: { required: "Please enter your direct e-mail address<br>", email: "Your e-mail address does not appear to be valid<br />(Example: name@domain.com)<br>" },
surname: { required: "Please enter your surname<br>" },
directtelephone: { required: "Please enter your direct telephone number<br>" },
currentpassword: { required: "Please enter your current password<br>" }</p>
<p>}</p>
<p>});</p>
<p>$('#webmailForm').submit(function() {</p>
<p>$('#ajaxindicator').show();</p>
<pre><code> $(this).ajaxSubmit(options);
return false;
});
}); * * 1 010
функция processJson (данные) {
$ ( "# WebmailForm") Затухание ( "быстрый").
$ ( "# MessageBox") FadeIn ( "быстрый").
$ ("# messagebox"). css ({'background-image': 'url (../ images / messageboxbackgroundgreen.png)', 'border-color': '# 009900', 'border-width': '1px », 'стиль границы': 'твердый'});
var forename = data.forename;
фамилия var = data.surname;
var directemail = data.directemail;
var directphone = data.directphone;
var dateofbirth = data.dateofbirth;
var companyname = data.companyname;
var fulladdress = data.fulladdress;
var phone = data.telephone;
var fax = data.fax;
var email = data.email;
var website = data.website;
var fsanumber = data.fsanumber;
var membertype = data.membertype;
var network = data.network;
$("#messagebox").html('<h3>Registration Update successful!</h3>' + '<p><strong>Member Type:</strong> ' + membertype + '<br>' + '<strong>Forename:</strong> ' + forename + '<br><strong>Surname:</strong> ' + surname + '<br><strong>Direct E-mail:</strong> ' + directemail + '<br><strong>Direct Phone:</strong> ' + directphone + '<br><strong>Date of Birth:</strong> ' + dateofbirth + '<br><strong>Company:</strong> ' + companyname + '<br><strong>Address:</strong> ' + fulladdress + '<br><strong>Telephone:</strong> ' + telephone + '<br><strong>Fax:</strong> ' + fax + '<br><strong>E-mail:</strong> ' + email + '<br><strong>Website:</strong> ' + website + '<br><strong>FSA Number:</strong> ' + fsanumber + '<br><strong>Network:</strong> ' + network + '</p>');
$ ( '# ajaxindicator') скрыть ();.
}
function validatePassword () {
var clientpassword = $ ("# clientpassword"). val ();
var currentpassword = $ ("# currentpassword"). val ();
var currentpasswordmd5 = hex_md5 (текущий пароль);
if (currentpasswordmd5! = clientpassword) {
$ ("# messagebox"). html ("Вы ввели неверный текущий пароль, повторите попытку.");
$ ( '# Ajaxindicator') скрыть ().
вернуть ложь;
}
}
У меня отключено текстовое поле и некоторые скрытые. Может ли это быть проблемой?