2017-12-20 9 views
0

私はdatepickerで入力マニュアルを許可しないようにするためにreadonlyを使用していますが、私の問題はこれらの入力をしたいと思っています検証も受け取ります。jQuery DatePickerは手作業による入力を防ぎ、検証に必要なものを取得します

$("#formkarir").validate({ 
    highlight: function(element) { 
     $(element).closest('.form-group').addClass('has-error'); 
    }, 
    unhighlight: function(element) { 
     $(element).closest('.form-group').removeClass('has-error'); 
    }, 
    errorElement: 'span', 
    errorClass: 'help-block', 
    errorPlacement: function(error, element) { 
     if (element.parent('.input-group').length) { 
      error.insertAfter(element.parent()); 
     } else { 
      error.insertAfter(element); 
     } 
    }, 
    rules: { 
     "closed": { 
      required: true 
     } 
    }, 
    messages: { 
     "closed": { 
      required: "Please, input expired recruitment job" 
     } 
    } 
}); 

しかし、それclosedが空の値があると私はボタンを押したとき、それはメッセージが表示されませんでした。ここで

<input type="text" id="closed" name="closed" class="form-control datepicker" readonly/> 

そして、ここで私のjavascriptの私のコードです。そのclosedreadonlyをクリアしたら、それはメッセージを表示しています。しかし、私の問題は、私は私の入力をしたくないですclosed手入力を取得します。どうやってやるの?

私はreadonlyを使用しています。ユーザーが異なる日付形式を入力することになります。だから誰も私の問題を解決する方法を考えている?

答えて

0

それは読み取り専用フィールドがフォーカスを取得した、と彼らはそれを残した後、それを削除した場合にのみ可能な回避策があります: How can I enable jquery validation on readonly fields?

別のオプションは、正規表現でHTMLフィールドの入力形式を設定するには、次のようになります。 https://www.w3schools.com/tags/att_input_pattern.asp

また、検証時に手動ですべてのフィールドを反復処理することもできます。上記のリンクにもこの試みが必要です。

+0

私はあなたが与える最初のオプションを試しても、何もしていない、まだ私はそれに焦点を置く空、任意のsugesstionの表示マッサージをdidntしていないのですか? – Wolfzmus

+0

「空の時」とはどういう意味ですか? ぼかしイベントにログ行を挿入して、readonlyプロパティの削除が本当に必要なときに呼び出されているかどうかを確認し、submitイベントのreadonlyプロパティも削除してみてください。 –

+0

"空"はそれに価値がないことを意味します。そして私はちょうど私の質問に答える、ちょっとばかげています。ところで、私を助けてくれてありがとう。 :) しかし、私はちょっとあなたの最初のオプションの答えが好きです。 :) – Wolfzmus

0

私はsoltuionを見つけて、ちょっとばかげているので、プラグインのブートストラップdatepickerを手動で追加/編集することはできません。日付を選択する必要があります。したがって、読み込み専用は必要ありません。私を助けてくれてありがとう、より良いquesitonを作るために私の答えを編集しよう。 :)

関連する問題