Если вы используете этот плагин проверки jQuery, то вы совершенно не понимаете, как работает плагин! посмотрите демонстрационные примеры того, как его использовать, простейшая настройка:
$(function() {
$("#myForm").validate();
});
не нужно $("#myForm").submit(...etc)
, так как плагин позаботится об этом!
EDIT:
Итак, на основании вашего обновления вот мои комментарии:
Прежде всего, весь код, который вы добавили в свой вопрос теперь, может идти в методе submitHandler
.
Во-вторых, вам действительно нужно "подготовить" свои данные перед их отправкой? Вы можете просто использовать плагин доступные методы проверки и поместить pageAction
в скрытый ввод, и ваш submitHandler
будет выглядеть так:
$("#courseForm").validate({
rules: { // All the plug-in built-in validation methods fro your form inputs go here (e.g. required...etc)
// ...
},
messages: {
// ...
},
submitHandler: function(form) {
$.ajax({
type:'POST',
url: 'defineCourse.action',
data: $(form).serialize(),
success: function(data) {
if (data == null || data == '') {
alert('Successfull!');
} else {
alert(data);
}
},
error: function(data) {
alert('Something wrong!');
}
});
}
});
Таким образом убедитесь, что в полях ввода формы указано правильное поле name
, ожидаемое страницей, получающей отправку формы (pageAction, nameOfCourse, duration....etc
). И все остальные проверки (trim
.. и т. Д.) Должны выполняться на стороне сервера.
ИНОГДА, и если вы хотите продолжать делать это по-своему, тогда код будет:
$("#courseForm").validate({
rules: { // All the plug-in built-in validation methods fro your form inputs go here (e.g. required...etc)
// ...
},
messages: {
// ...
},
submitHandler: function(form) {
var nameOfCourse = $.trim($("#course_name").val());
var codeOfCourse = $.trim($("#course_code").val());
var duration = $.trim($("#course_hour").val());
var courseYear = $("#course_year").val();
var elective = 0;
var service = 0;
if ($("#is_elective").is(':checked')) {
elective = 1;
}
if ($("#is_service").is(':checked')) {
service = 1;
}
var typeOfClassroom = $("#clasroom_type").val();
var groupCount = $("#group_count").val();
$.ajax({
type:'POST',
url: 'defineCourse.action',
data: { pageAction:"defineCourse" , nameOfCourse: nameOfCourse, codeOfCourse: codeOfCourse, duration: duration, courseYear: courseYear, elective: elective, service: service, typeOfClassroom: typeOfClassroom, groupCount: groupCount },
success: function(data) {
if (data == null || data == '') {
alert('Successfull!');
} else {
alert(data);
}
},
error: function(data) {
alert('Something wrong!');
}
});
}
});