2017-03-16 2 views
0

Ich benutze das Gravity Forms Plugin auf WordPress, welches jQuerys Datepicker enthält. In einem meiner Formulare habe ich ein minDate und ein maxDate definiert, aber innerhalb dieser Datenmenge muss ich einen bestimmten Tag deaktivieren (Sonntag, 23. April).Wie Sie einen bestimmten Tag in Datepicker deaktivieren? (Gravity Forms)

Ich habe den Weg gefunden, das ganze Wochenende mit der NoWeekend-Funktion zu deaktivieren, aber die Sache ist: Ich muss Samstag 22 verfügbar halten!

Hier ist der Code Ich verwende jetzt:

<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> 

Jede Idee, was ich zu ihm, um hinzufügen könnte 23/04/2017 Behinderte als eine Wahl zu haben?

Vielen Dank für Ihre Hilfe!

Antwort

0

Ich glaube, Sie suchen etwas wie das. Beachten Sie die Funktion 'filter' von beforeShowDay, die für jedes im Kalender angezeigte Datum einen booleschen Wert true oder false verwendet, um ihn als verfügbar anzuzeigen oder nicht. Ich habe ein Array für die Daten verwendet, die Sie überprüfen, für den Fall, dass Sie in Zukunft mehr als eins testen müssen.

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

Vielen Dank für Ihre Antwort Kumpel, aber das scheint es nicht zu tho schneiden. Stattdessen wird der vorherige Code "storniert" und das Ganze wird auf die Standardeinstellung zurückgesetzt (jedes Datum im Kalender kann jetzt ausgewählt werden: Jeder Tag ist wieder verfügbar, einschließlich vergangener Daten). NB: meine Programmierkenntnisse sind sehr noobish, vielleicht hätte ich etwas falsch machen können, aber ich habe ehrlich gesagt nur Ihren neuen Code kopiert, um es unter dem alten einzufügen. – Zongo

+0

Haben Sie zufällig einen Link, den Sie teilen können? Oder wenn das nicht klappt, gibt es irgendwelche Konsolen-Javascript-Fehler, wenn du F11 drückst, gehe zur Konsolen-Registerkarte? –

Verwandte Themen