2016-10-27 6 views
0

これで、フォームを条件付きで検証する方法について質問します。新しい問題があります。入力テキストがありますが、読み込み専用です。入力テキストはアドレスです。コールオフィス。私はオフィスを入力しようとすると、テキストアドレスは私がオフィスで書くものによって異なります。 (私はアドレスを取得するためにajaxとmysqlを使用しています)、もしそのオフィスがmysql上のデータを持っていなければ、アドレスは表示されません。今私の問題はフォームの検証にあります、私はアドレスが空であるかどうかを確認する必要があります私はショーアラートが必要です。私はどうしたの?私はこのフォームは、読み取り専用入力で検証します

$('#form').validate({ 
      errorElement: 'span', 
      errorClass: 'help-block', 
      rules: { 
       office : { 
       required : true 
       }, 
       address: { 
        required: { 
         depends: function(element) { 
          if ($('#office').val() != '') { 
           return true; 
          } else { 
           return false; 
          } 
         } 
        } 
       }}, 
      messages: { 
       Office : "Please insert name office", 
       address : "Seem office not quite right" 
      } 
}); 

のようなコードを試してみて、ここに私のhtmlコード

<form class="form-filter" id="form" role="form"> 
    <div class="row"> 
       <div class="col-md-4 col-sm-5"> 
        <div class="form-group"> 
<label> 
          Office 
         </label> 
         <input type="text" placeholder="Insert name Office" class="form-control" id="Office" name="Office"> 
        </div> 
        <div class="form-group"> 
         <label> 
          Address 
         </label> 
         <input type="text" class="form-control" id="address" name="address" readonly> 
        </div> 
<button type="submit">Check</button> 
</from> 

を私が提出しようとすると、それは、すべての作業をdidntの。私は私のオフィスを満たしていない場合、それは完全に働く。またはreadonlyはルールに使用することはできません???

Upadteは、私がreadonlyを使用するとちょっとバグです。だから、別のソリューションを試してみよう。

もう一度更新! いいえクリックしてボタンを使用しています。仕事である。だから私はちょうどこのようなチェックが必要

$('#btnsave').click(function() { 
    if($("#form").valid()==true) 
    { 
    if($('#address').val()!="") 
    { 
     do something; 
    } 
    else 
    { 
     do alert; 
    } 
    } 
}); 
+0

読み取り専用入力が必要になりますか?それは意味をなさない。 – jeroen

+0

私はoyuに奇妙なビットを知っていますが、私はあまりにもオフィスがアドレスを持っていることを確認する必要があります原因でnedd。 – Wolfzmus

+0

オフィスが有効であるかどうかを確認してください。別の入力をする必要はありません。 – jeroen

答えて

0

私はいくつかのコードハックを配置しているが、あなたのコードごとにそれを管理する必要があります。だからまずそれをテストしてください。

$('#address').prop('readonly', false);//Convert readonly while validation perform 
//Do your validation stuff 
$('#address').prop('readonly', true);//again make it readonly 

混乱がある場合は教えてください。

+0

いいえ、私はreadonlyは偽ではない、原因アドレスは読み難いですreadonly編集することはできません。そして私はちょっと私の更新を明確に読んでいないと思う。 – Wolfzmus

+0

実際には、上記のコードは一時的にreadonly属性を保持しています。 –

+0

しかし、私の問題は私が読んだことを台無しにしたくないということです。 – Wolfzmus

関連する問題