none
MVC3 datepicker con Jquery en Razor RRS feed

  • Pregunta

  • Hola que tal, quiero que un datetimepicker de jquery que tiene el boton de ahora, o now en lugar de ponerme fecha y hora actual, pueda personalizar el metodo asi agregarle las reglas de negocio, es para una reagendacion de cita telefonica, donde si presiono el boton de ahora o now, en lugar de ponerme fecha-hora actual, me ponga hoy:hora+20minutos y si es de cierta hora (5:45) me pase al dia siguiente

    espera haberme explicado, ahora si lo hace el datetimepicker, pero se le agrega al datetime el mindate al momento de crearlo con la regla de negocio para ese boton, y no puedo hacer que se actualice, aqui dejo el codigo, si tengo que modificarlo o agregarle cosas para que se actualice por minuto les agradeceria

    function buildDateTimePicker(element) {
        var today = new Date();
        var plus30Days = new Date();
        plus30Days.setDate(today.getDate() + 31);
        var availDay = 0;
    
        var currentHour = today.getHours();
        var currentMinute = today.getMinutes();
    
        var TodayAtQuarterToSix = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 17, 45, 0, 0);
        var TodayAtNineAm = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 9, 0, 0);
    
        if (today > TodayAtQuarterToSix) {
            availDay = 1;
            currentHour = 9;
            currentMinute = 0;
        }
    
        if (today < TodayAtNineAm) {
            currentHour = 9;
            currentMinute = 0;
        }
    
        var rslt = ((currentMinute / 15) + 1) * 15;
    
        currentMinute = rslt;
    
        if (rslt >= 60) {
            currentHour += 1;
            currentMinute = 0;
        }
    
        var currentYear = today.getFullYear();
        var currentMonth = today.getMonth();
        var currentDay = today.getDate() + eval(availDay);
        var todayLimit = new Date(currentYear, currentMonth, currentDay, currentHour, currentMinute, 0, 0);
    
        var limitYear = plus30Days.getFullYear();
        var limitMonth = plus30Days.getMonth();
        var limitDay = plus30Days.getDate() + eval(availDay) - 1;
        if (limitDay == 0) {
            limitDay = 1;
        }
        var limitHour = 17; // plus30Days.getHours() ;
        var limitMinute = 45;
        var futureLimit = new Date(limitYear, limitMonth, limitDay, limitHour, limitMinute, 0, 0);
    
        $('#' + element).datetimepicker(
            { beforeShowDay: disableSpecificWeekDays,
                ampm: false,
                showTime: true,
                stepMinute: 15,
                hour: currentHour,
                minute: currentMinute,
                hourMin: 9,
                hourMax: 17,
                minuteMax: 45,
                timeformat: 'hh:mm',
                altFormat: 'dd/MM/yy',
                dateFormat: 'dd/MM/yy',
                timeOnlyTitle: $("#NoContact").data("dateTimePickertimeOnlyTitle"),
                timeText: $("#NoContact").data("dateTimeTimeText"),
                hourText: $("#NoContact").data("dateTimeHourText"),
                minuteText: $("#NoContact").data("dateTimeMinuteText"),
                secondText: $("#NoContact").data("dateTimeSecondText"),
                currentText: $("#NoContact").data("dateTimeCurrentText"),
                closeText: $("#NoContact").data("dateTimeCloseText"),
                minDate: todayLimit,
                maxDate: futureLimit
            }
        );
        $("#" + element).click(function () { $("#" + element).datepicker("show"); });
    }
    

    Saludos y Gracias


    Si crees que la educacion es cara, prueba con la ignorancia....

    viernes, 11 de mayo de 2012 17:12