2010-06-23 100 views
0

我有一個jQuery UI的日期時間選擇器的文本框。當我打開頁面jquery清除我的文本框(文本框有一個默認值)有什麼辦法來阻止這個動作?jQuery日期時間選擇器

查看:

<div class="editor-field"> 
       <%: Html.TextBoxFor(model => model.Start, String.Format("{0:g}", Model.Start)) %> 
       <%: Html.ValidationMessageFor(model => model.Start) %> 
</div> 

的.js

$(document).ready(function() { 
$("#Start").datepicker({ 
     showOn: 'button', 
     buttonImage: '../../Content/img/cal.jpg', 
     buttonImageOnly: true, 
    }); 
$("#Start, #End").datepicker("option", "showAnim", 'slideDown'); 
}); 

謝謝 PETI

+0

發佈你的可能! – Zuul 2010-06-23 14:44:33

+0

在調用'$(「#開始」)之前,該值是否存在於文本框中?datepicker()'? – 2010-06-23 15:14:54

回答

0

你可以在通話之前獲取該值,然後再設置一次嗎?

$(document).ready(function() { 
    var default_date = $("#Start").val(); 
    $("#Start").datepicker({ 
      showOn: 'button', 
      buttonImage: '../../Content/img/cal.jpg', 
      buttonImageOnly: true, 
     }); 
    $("#Start, #End").datepicker("option", "showAnim", 'slideDown'); 
    $("#Start").val(default_date); 
}); 

這就是說,我猜測還有其他一些問題。我已經使用了datepicker插件已經有一段時間了,但是我無法想象它會在創建時從輸入中創建一個有效的日期值。

你可以在Pastebin之類的地方發佈你的代碼嗎?

編輯:

哦,你是對的格式。它預期的默認日期格式是mm/dd/yy。你想要做的是設置日期格式選項以反映你的特定格式。您還需要從日期值中去除時間分量。該代碼會是這個樣子(可能不是100%coreect):

$(document).ready(function() { 
    var date_stripped_of_time = $("#Start").val().substring(0, 10); 
    $("#Start").val(date_stripped_of_time); 
    $("#Start").datepicker({ 
      showOn: 'button', 
      buttonImage: '../../Content/img/cal.jpg', 
      buttonImageOnly: true, 
      dateFormat: 'yy.mm.dd', 
     }); 
    $("#Start, #End").datepicker("option", "showAnim", 'slideDown'); 
}); 

您可以通過查看options tab in the DatePicker documentation瞭解更多信息,與formatDate documentation看你可以使用什麼日期格式的字符串。

+0

這是默認格式:2010.06.09。 0:00:00。 (和文本框中的值)。也許jQuery不能接受或識別..你的解決方案很簡單,但它工作,謝謝:) – Peti 2010-06-23 18:35:52

0

我需要看到你的代碼,但jQuery的日期選擇器插件不清除文本框。我一直在我的網絡應用程序中使用它,而且我從未體驗過這種行爲。

也許你有其他一些代碼行干擾?你能發佈你的代碼嗎?

編輯:那些Mvc helper命令的html輸出會更有用,無論如何我可以猜測:文本框中的日期以Jquery datepicker無法識別的格式呈現。由於datepicker強制使用有效的日期格式,因此在文本框中出現錯誤格式的日期可能會導致插件將其刪除。

+0

我試過沒有jquery,deafult日期顯示爲 – Peti 2010-06-23 15:05:38