2015-10-06 65 views
1

我已經在一個控件中爲datetime選擇器創建了一個自定義控件,我給出了三種模式datetimepicker,timepicker和datepicker.For我已經創建了一個名爲CalenderMode的枚舉類型屬性,它存儲了這三種模式,價值我給予屬性根據我更改datetimepicker,如果我給timepicker然後我的timepicker被啓用,如果我給datepicker然後日期選擇器啓用,如果我給datetimepicker然後我的datetimepicker被啓用,我在處理jQuery的。datetimepicker無法正常工作

驗證這些我從C#格式和格式我在客戶端使用,但現在的問題是,如果我的timepicker或日期選擇器已啓用,並從timepicker我選擇的時間,但在文本框中顯示日期時間日期選擇器也是如此,它也顯示日期時間。

在這裏,我不明白是什麼問題。

我的jquery我在哪裏改變使用分配值給屬性壓延機的模式的代碼是

$(document).ready(function() { 
$('.calendercssclass').each(function() { 
    var result; 
    var value = $(this).closest('.DateControl').find("input[type=hidden][id*='CalenderTypeModeID']").val(); 
    if (value == "timepicker") { 
     $(this).datetimepicker({ 
      timepicker: true, 
      datepicker: false 
      //mask: true 
     }); 
    } 
    else if (value == "datepicker") { 
     $(this).datetimepicker({ 
      timepicker: false, 
      datepicker: true 
      // mask: true 
     }); 
    } 
    else { 
     $(this).datetimepicker({ 
      //mask: true 
     }); 
    } 
}); 

});

爲了讓審定格式我使用下面的代碼

function ValidateFormatOfDatecontrol(sender, args) { 
debugger; 
args.IsValid = true; 
var format; 
$('.calendercssclass').each(function() { 
    var result; 
    var value = $(this).closest('.DateControl').find("input[type=hidden][id*='CalenderTypeModeID']").val(); 
    if (value == "timepicker") { 
     format = $(this).closest('.DateControl').find("input[type=hidden][id*='ClientTimeFormatID']").val(); 

     var answer = $(this).val(); 
     if (answer != '') { 
      //Moment.js inbuilt function for validating the date format . 
      args.IsValid = moment(answer, format, true).isValid(); 


     } 
    } 
    else if (value == "datepicker") { 
     format = $(this).closest('.DateControl').find("input[type=hidden][id*='ClientDateFormatID']").val(); 
     var answer = $(this).val(); 

     if (answer != '') { 
      //Moment.js inbuilt function for validating the date format . 
      args.IsValid = moment(answer, format, true).isValid(); 
     } 
    } 
    else if (value == "datetimepicker") { 
     format = $(this).closest('.DateControl').find("input[type=hidden][id*='ClientDateTimeFormatID']").val(); 
     var answer = $(this).val(); 

     if (answer != '') { 
      //Moment.js inbuilt function for validating the date format . 
      args.IsValid = moment(answer, format, true).isValid(); 


     } 
    } 
}); 

}

服務器端代碼給了格式驗證

this.clientDateFormat.Value = "MM/DD/YYYY"; 
this.clientDateTimeFormat.Value = "mm/dd/yyyy H:i A"; 
this.clientTimeFormat.Value = "H:i"; 

截圖的問題是

enter image description here

任何人都可以幫助我嗎?

回答

1

在這裏,您正在使用雨Jquery的那麼fromat雨的時間是從你使用的是什麼這麼繼驗證的時刻不同的是兩個

雨Jquery的時間格式的格式:h:i A 時刻的時間格式:h:mm A

下面是示例代碼

腳本

$(document).ready(function() { 
    $(".date").datetimepicker({ 
     format: 'h:i A',    
     datepicker:false 
    }); 

    $(".date").change(function() { 
     var format = "h:mm A"; 
     $('#message').text(moment($(".date").val(), format, true).isValid()); 
    }); 

    }); 

標記

<div> 
    <asp:TextBox ID="TextBox1" runat="server" CssClass="date"></asp:TextBox> 

    <asp:Label ID="message" runat="server" CssClass="message"></asp:Label> 


</div>