0

我的列表(检查表)有一个 Sharepoint 数据输入表单,其中有一个名为“输入日期”的字段。我想在用户单击“添加新条目”时自动填充今天的日期和时间,因为我想将其用作审计数据。

现在,我想使用 java 脚本(经过研究,这似乎是最直接的方法),所以我在 NewForm.aspx 页面中添加了以下内容:

<asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server">
<script language="javascript" type="text/javascript">
var today = new Date(); 
var dd = today.getDate(); 
var mm = today.getMonth()+1; //January is 0! 
var yyyy = today.getFullYear(); 
if(dd<10)
{dd='0'+dd;} 
if(mm<10)
{mm='0'+mm;} 
var formattedToday = mm+'/'+dd+'/'+yyyy;
alert(formattedToday);
document.getElementById('<%=  ((TextBox)this.onetIDListForm.FindControl("ff10_1")).ClientID %>').value = formattedToday;
</script>
</asp:Content>

alert(formattedToday);只是为了测试java脚本是否被拾取,并将在稍后阶段被删除。

好的..我得到了弹出窗口,所以值计算正确并且java脚本工作。我遇到的问题是将此值放入“输入日期”字段。

调用 document.getElementByID 的正确方法是什么?

我尝试了多种变体:

document.getElementById('<%=  ((TextBox)this.onetIDListForm.FindControl("ff10_1")).ClientID %>').value = formattedToday;

或者..

document.setElementById("Date Entered").value = formattedToday;

或者..

document.setElementById("ff10_1").value = formattedToday;

有人可以指出正确的格式,或使这项工作的方式吗?

在上面的脚本旁边,我认为我需要将表单字段“输入日期”行为(启用视图)设置为“False”,但目前超出了范围。

谢谢,克里斯

4

1 回答 1

0

看看这篇文章。它讨论了如何使用 jQuery 实现这一点。请参阅下面的示例并尝试一下。您将用相应的名称“输入日期”替换列名称。这应该为您填充适当的文本框。

<script type="text/javascript">

 $(function() {

  $('input[title=DefaultMeFieldNoSpaces]').attr(
       {value: 'You are in a twisty maze of passages, all alike.'});
  });

于 2012-05-19T22:48:24.797 回答