2017-03-16 14 views
0

私はWordPressにGravity Formsプラグインを使用しています。これにはjQueryのdatepickerが含まれています。私のフォームの1つでは、minDateとmaxDateを定義しましたが、この配列の中で特定の1日(4月23日の日曜日)を無効にする必要があります。Datepickerで特定の日を無効にするにはどうすればよいですか? (Gravity Forms)

noWeekend関数で週末全体を無効にする方法が見つかりましたが、問題は次のとおりです。土曜日22日を利用可能にする必要があります。

ここで私が今使っているコードです:

<script type="text/javascript"> 
gform.addFilter('gform_datepicker_options_pre_init', function(optionsObj, formId, fieldId) { 
    if (formId == 2 && fieldId == 4) { 
    optionsObj.minDate = '17/04/2017'; 
    optionsObj.maxDate = '29/04/2017'; 
} 

return optionsObj; 
}); 
</script> 

は、私は選択肢として無効23/04/2017を持つために、それに追加することができるものの任意のアイデア?

今後のお手伝いをしていただきありがとうございます。

答えて

0

私はあなたがこのようなものを探していると信じています。 beforeShowDay 'filter'関数に注意してください。この関数は、カレンダーで表示される各日付に対して、trueまたはfalseのブール値を使用して表示します。私はあなたが将来複数のものをテストする必要がある場合に備えて、チェックしている日付の配列を使いました。

gform.addFilter('gform_datepicker_options_pre_init', function(optionsObj, formId, fieldId) { 
    if (formId == 2 && fieldId == 4) { 
     optionsObj.minDate = '17/04/2017'; 
     optionsObj.maxDate = '29/04/2017'; 

     optionsObj.beforeShowDay: function(date){ 
     var array = ["2017-04-23"]; 
     var string = jQuery.datepicker.formatDate('yy-mm-dd', date); 
     return [ array.indexOf(string) == -1 ]; 
     } 
    } 

return optionsObj; 
}); 
+0

回答メイトに感謝しますが、これはそれをカットしていないようです。代わりに、前のコードを「取り消す」ようなもので、すべてが標準設定に戻っています(カレンダーの各日付を選択できるようになりました:毎日が過去の日付を含む利用可能に戻っています)。 NB:私のコーディングスキルは非常にノービスですが、多分何か間違ったことがありましたが、正直なところ新しいコードをコピーして古いものの下に貼り付けました。 – Zongo

+0

共有できるリンクがありますか?それともF11を押すとコンソールのjavascriptエラーが表示されますか?コンソールのタブに移動しますか? –

関連する問題