1

フォントエンド ユーザーが SharePoint にログインした後、特定の SharePoint セッション変数が存在するかどうかを検出するために使用できる JavaScript オブジェクト、メソッド、またはプロパティはありますか?

以下はうまくいくようです..

<SharePoint:Delegate runat="server" ControlId="MyDelegateControlTest" Id="MyDelegateControlTest">
<template_Controls>
<script type="text/javascript">var mvar='hello'; console.log('hello world');</script>
</template_Controls>
</SharePoint:DelegateControl>

しかし、セッション変数を保存しようとすると...

<SharePoint:Delegate runat="server" ControlId="MyDelegateControlTest" Id="MyDelegateControlTest">
<template_Controls>
<script type="text/javascript">var mvar='<%= Session["demo"]%>'; console.log('hello world');</script>
</template_Controls>
</SharePoint:DelegateControl>

...ページに「Microsoft.SharePoint.WebControls.DelegateControl にはパブリック プロパティ名スクリプトがありません」というエラーが表示されます。

私は何を間違っていますか?

4

1 に答える 1

1

セッション変数はサーバー側のオブジェクトであるため、クライアント側で JavaScript からセッション変数を読み取る唯一の方法は、セッション値を JavaScript 変数としてページに応答することです。マスター ページのデリゲート コントロールを使用してこれを行い、javascript で変数をチェックすることができます。

編集: デリゲートのフロント エンドで、以下のようなスクリプト ブロックを追加します。

<script type="text\javascript"> var mySessionVar = '<%= Session["mySessionVar "] %>'; </script>

これで、他の場所の JavaScript コードで mySessionVar にアクセスできるようになります。

于 2013-05-06T14:33:50.550 に答える