我已经在网上搜索了一段时间,但我找不到我的问题的简单答案。所以,我有一个带有日期和时间类型的 Sharepoint 列表,并且我创建了一个自定义表单来添加新元素。在表单上,我创建了一个 DateTimeField 就像这样:
<SharePoint:DateTimeField runat="server" id="ff_Order_Asset_DeliveryDate" FieldName="DeliveryDate" />
一切正常。现在我想添加一个验证,因为选择的日期不能是过去,所以我需要比较它与当前日期。我想使用 PreSaveAction 在 javascript 中执行此操作,但问题是,我不知道如何从我的控件中获取日期值。我试过这样的事情:
var dateSelected = document.getElementById("<%=ff_Order_Asset_DeliveryDate.ClientID%>");
var dateFromSelection = new Date(dateSelected.value);
var dateNow = new Date();
if (dateFromSelection < dateNow)
doSomething();
但它当然行不通。请赐教我怎么能做到这一点?我将不胜感激!
- - - - - - - - - - - - - - - - 回答 - - - - - - - - - --------------------
如果有人关心:似乎我唯一应该做的就是使用这个 jQuery 语法:
var dateSelected = $('input[id*="ff_Order_dFAsset_DeliveryDate"]');
因为正如 Mark Oreta 所说,Sharepoint 为我控制的 ID 添加了很多内容。