2017-03-22 6 views
0

私はbootbox.jsを使用しています。これは、ユーザーが 'メッセージ'の部分にフォームを作成することができます。しかし、私はの前にjquery を使っていくつかの検証をしたいと思います。Submitボタンをクリックします。bootboxメッセージで作成されたフォームを検証する方法は?

これはbootboxです:いくつかの検証フォーム送信加えることなく、

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"); });
テストスクリプトのですか?

私がやりたいの検証は、次のとおりです。

  • 最初の項目が最初にチェックされている場合、アイテムの残りの部分は を確認することはできませんされています。
  • 最初の項目が最初にチェックされていない場合、ユーザーは の最初の項目を確認できません。

答えて

0

実際にはフォームコンテンツを持っていないので、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を使用している前提としています。

関連する問題