Как проверить форму, созданную в сообщении bootbox?
Я использую bootbox.js. Это позволяет пользователю создавать форму в ее части "сообщения". Но я хотел бы сделать некоторые проверки с использованием jquery, прежде чем я нажимаю кнопку отправки.
Это загрузочная коробка:
bootbox.confirm({
title : "Choose Item:",
message :
"<?php
echo "<form id='f_item'>";
echo "<h3>Item: </h3><br/>";
foreach($item as $row_item){
echo "<input type='checkbox' name='item' class='cek_item' value='".$row_pic->item."' />";
}
echo "</form>";
?>",
buttons : {
cancel : { label: '<i class="fa fa-times"></i> Batal' },
confirm : { label: '<i class="fa fa-check"></i> OK'}
},
callback: function (result) {
//If OK button is pressed
if(result == true){
/*SENT FORM CODE*/
}
}
});
Без добавления какой-либо формы проверки отправка работает. Но я не знаю, где поставить проверочный скрипт.
Это тестовый скрипт$(".cek_item").on('change',function(event){ alert($(this).val()+" is choosen"); });
куда мне положить этот скрипт?
Проверка, которую я хотел бы сделать:
- Если первый элемент проверен первым, остальная часть элемента не может быть проверена.
- Если не первый элемент проверен первым, то пользователь не может проверить первый элемент.
1 ответ
Вы как бы злоупотребляете функцией bootbox.confirm, так как на самом деле она не предназначена для содержания форм. При этом вы добавили бы свое подтверждение, где у вас есть /*SENT FORM CODE*/
- если вы вернете false из этого обратного вызова, модал не закроется, так что-то вроде:
callback: function (result) {
//If OK button is pressed
if(result == true){
/*SENT FORM CODE*/
$("#f_item").validate();
if($("#f_item").valid()) {
/* form is valid */
}
else {
/* form is not valid */
return false;
}
}
}
Это предполагает, что вы также используете JQuery Validation.