「入力日」というフィールドがあるリスト (検査表) 用の 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」に設定する必要があると思いますが、現時点では範囲外です。
ありがとう、クリス