Я пытаюсь настроить плагин validval (последняя версия 4.0.0) и мне не повезло ...
Вот что у меня есть в HTML
<form name="LoginForm" id="LoginForm" data-transition="slide" action="somepage.html" method="post">
// ... text inputs
<input type="submit" id="CheckLogin" name="CheckLogin" value="Login" data-theme="e" />
</form>
И Jquery :
// tried pageinit and pageshow
$('div:jqmData(role="page")').live('pageshow', function() {
$(this).find('form').each(function() {
// call once
if ( $(this).find('.required').length > 0 && $(this).attr('valed') != 'on') {
// flag and validVal
$(this).attr('valed', 'on').validVal({
'validate': { 'onBlur': false },
'customValidations': { },
'form': {
'onValid': function( $form, language ) {
console.log("form ok");
},
'onInvalid': function( $form, language ) {
console.log("form not ok");
// attach an error to form
$(this).attr('error', 'yes');
}
}
});
}
});
Это должно настроить проверку формы на страницах.
Теперь я привязываюсь к кнопке отправки:
$("#CheckLogin").click( function(event) {
event.preventDefault();
// call validval
// DOES NOT WORK, cause validval() doesn't fire like this
var errors = $("#CheckLogin").triggerHandler( "submitForm.vv" );
console.log( errors );
// alternative, check for attached errors
// DOES NOT WORK, cause validval() doesn't fire on click
// ... my routine running if there are no errors
// Submit
// document.LoginForm.submit()
});
Проблема в том, что если я связываюсь с отправкой, проверка работает, но форма всегда отправляется сразу, независимо от того, чтовалидвал говорит.Так что теперь я обязуюсь кликнуть и хочу запустить свою рутину "вручную".Это означает, что мне также нужно запустить validval с помощью triggerhandler - по крайней мере, он говорит об этом на их веб-сайте .Проблема в том, что validval не срабатывает так.И я понятия не имею, почему?
Вопрос :
Как я могу запустить валидацию формы validVal () из моего обработчика кликов?Или, если я вернусь к привязке для отправки, как я могу убедиться, что форма автоматически не отправляется в забвение?
Надеюсь, что информации достаточно и большое спасибо за помощь!