Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
选择结束日期后禁用javascript切换(Wordpress/Woocommerce)_Javascript_Jquery_Wordpress_Plugins_Woocommerce - Fatal编程技术网

选择结束日期后禁用javascript切换(Wordpress/Woocommerce)

选择结束日期后禁用javascript切换(Wordpress/Woocommerce),javascript,jquery,wordpress,plugins,woocommerce,Javascript,Jquery,Wordpress,Plugins,Woocommerce,我正在一个涉及房间预订的网站上工作。我正在使用Woocommerce预订插件: 问题演示: 在我展示日历的特定房间上,您需要选择入住的开始和结束日期,这一切都是正常的。在日历上方显示文本:“选择开始日期”,当您单击开始日期时,它将切换为“选择结束日期” 问题 当您同时选择开始日期和结束日期时,日历上方的标签将再次显示“选择开始日期”,这可能会让客户非常困惑。我假设这个标签是由javascript触发的切换。所以我需要做的是在选择了两个日期后隐藏此消息,或者显示其他消息。我将如何做到这一点 我在p

我正在一个涉及房间预订的网站上工作。我正在使用Woocommerce预订插件:

问题演示:

在我展示日历的特定房间上,您需要选择入住的开始和结束日期,这一切都是正常的。在日历上方显示文本:“选择开始日期”,当您单击开始日期时,它将切换为“选择结束日期”

问题

当您同时选择开始日期和结束日期时,日历上方的标签将再次显示“选择开始日期”,这可能会让客户非常困惑。我假设这个标签是由javascript触发的切换。所以我需要做的是在选择了两个日期后隐藏此消息,或者显示其他消息。我将如何做到这一点

我在plugin文件夹中找到的Javascript代码:

select_date_trigger: function( date ) {
    var fieldset          = $( this ).closest('fieldset');
    var picker            = fieldset.find( '.picker:eq(0)' );
    var form              = $( this ).closest( 'form' );
    var parsed_date       = date.split( '-' );
    var start_or_end_date = picker.data( 'start_or_end_date' );
    if ( ! picker.data( 'is_range_picker_enabled' ) || ! start_or_end_date ) {
        start_or_end_date = 'start';
    }
// End date selected
    if ( start_or_end_date === 'end' ) {
        // Set min date to default
        picker.data( 'min_date', picker.data( 'o_min_date' ) );
        // Set fields
        fieldset.find( 'input.booking_to_date_year' ).val( parsed_date[0] );
        fieldset.find( 'input.booking_to_date_month' ).val( parsed_date[1] );
        fieldset.find( 'input.booking_to_date_day' ).val( parsed_date[2] ).change();
        // Calc duration
        if ( picker.data( 'is_range_picker_enabled' ) ) {
            wc_bookings_date_picker.calc_duration( picker );
        }
        // Next click will be start date
        picker.data( 'start_or_end_date', 'start' );
        if ( picker.data( 'is_range_picker_enabled' ) ) {
            form.find( '.wc_bookings_field_start_date legend span.label' ).text( 'always_visible' !== picker.data( 'display' ) ? booking_form_params.i18n_dates : booking_form_params.i18n_start_date );
        }
        if ( 'always_visible' !== picker.data( 'display' ) ) {
            $( this ).hide();
        }
        // Start date selected
    } else {
        // Set min date to today
        if ( picker.data( 'is_range_picker_enabled' ) ) {
            picker.data( 'o_min_date', picker.data( 'min_date' ) )
            picker.data( 'min_date', date )
        }
        // Set fields
        fieldset.find( 'input.booking_to_date_year' ).val( '' );
        fieldset.find( 'input.booking_to_date_month' ).val( '' );
        fieldset.find( 'input.booking_to_date_day' ).val( '' );
        fieldset.find( 'input.booking_date_year' ).val( parsed_date[0] );
        fieldset.find( 'input.booking_date_month' ).val( parsed_date[1] );
        fieldset.find( 'input.booking_date_day' ).val( parsed_date[2] ).change();
        // Calc duration
        if ( picker.data( 'is_range_picker_enabled' ) ) {
            wc_bookings_date_picker.calc_duration( picker );
        }
        // Next click will be end date
        picker.data( 'start_or_end_date', 'end' );
        if ( picker.data( 'is_range_picker_enabled' ) ) {
            form.find( '.wc_bookings_field_start_date legend span.label' ).text( booking_form_params.i18n_end_date );
        }
        if ( 'always_visible' !== picker.data( 'display' ) && ! picker.data( 'is_range_picker_enabled' ) ) {
            $( this ).hide();
        }
    }
    form.find( '.wc-bookings-booking-form' ).triggerHandler( 'date-selected', date, start_or_end_date );

如果用户错误地选择了一些错误的结束日期怎么办?他们仍然可以更改这一点,这就是为什么我找不到一个硬编码的解决方案,在点击两次后总是禁用消息。