2017-12-04 6 views
0

2つの入力 "from"と "to"フィルタに対してdatepicker jqueryを使用しています。 フィルタの1つ(from/to)が選択されている場合、必要にしたいと思います。また、ユーザーが日付フィルタを使用したくない場合は、必要な属性を削除する必要があります。datepickerが最初のロードで動作していない、jquery

しかし、私の「差出人」入力で日付を選択すると、最初の提出時には影響を受けません。 何らかの理由で、 "入力"入力が最初の読み込み時にdatepickerの値を認識しませんでした。

誰もが最初の提出でうまくいかない理由を知っていますか?私はそれがデフォルトで必要な設定、およびからの入力のための

$(document).ready(function() { 
    if ($('#to').val().length == 0 && $('#from').val().length == 0) { 
     $('#from').removeAttr('required'); 
     $('#to').removeAttr('required'); 
    } 
    else if ($('#to').val().length > 0) { 
     $('#from').attr('required'); 
    } 
    else if ($('#from').val().length > 0) { 
     $('#to').attr('required'); 
    } 
}); 

:ここ

はjqueryのためのコードです。

@Html.TextBoxFor(modelitem => Model.startdate, new { @class = "datepicker form-control" ,@placeholder = "Select From Date" , @id="from" , @required = "required" }) 

@Html.TextBoxFor(modelitem => Model.finishdate, new { @class = "datepicker form-control", @placeholder = "Select To Date" , @id = "to" , @required = "required" }) 

問題を教えてください。

+0

コンソールでエラーが発生していますか?あなたはチェックしましたか? –

+0

これをJsFiddleで再現できますか? – Marco

答えて

0

<script> 
    if ($('#to').val().length == 0 && $('#from').val().length == 0) { 
     $('#from').removeAttr('required'); 
     $('#to').removeAttr('required'); 
    } 
    else if ($('#to').val().length > 0) { 
     $('#from').attr('required'); 
    } 
    else if ($('#from').val().length > 0) { 
     $('#to').attr('required'); 
    } 
</script> 

や使用などのdocument .ready関数内でそれを削除しよう:

Alert("this is want to know on first run") 

にごif else声明

追加内側: 右ページをクリックしてください=>最初の実行時にコンソールメニューを開き、いくつかのエラーをチェックするか、jqueryが実行中かどうかを確認します。

+0

準備ができているドキュメントを削除すると、最初のページが読み込まれます。デフォルト値が必要なので、投稿できません。 – Response

関連する問題