0

コード ビハインドの使用を避けながら、asp コントロールを使用して要素のマークアップをレンダリングしようとしています。そのため、href プロパティを動的に生成して、FieldValue コントロール (SharePointWebControls) からレンダリングされたものを含めたいと考えています。

たとえば、私が持っているこのコントロール:

<SharePointWebControls:FieldValue id="PageTitle" FieldName="Title" runat="server"/>

次のように表示されます。

「テストページ」

そして、同じページに次のようなリンクがあります。

<a href="http://www.mysite.com/mypage.aspx?title=TestPage">CLICK HERE!</a>

しかし、上記の要素では、コントロール<a>によってレンダリングされた結果として TestPage が存在する必要があります。したがって、基本的に、このコントロールの出力を要素の href プロパティFieldValue内に「埋め込む」方法が必要です。<a>

のレンダリングされたバージョンに付随する厄介なマークアップFieldValueはありません。文字どおり単なるテキストです。したがって、これは複雑ではないと思います。

4

1 に答える 1

1

SP コントロールに慣れていませんが、コントロールを href に埋め込もうとすると、コンパイラが二重引用符で停止すると思います。

次のように、href の二重引用符を一重引用符に置き換えてみてください。

<a href='http://www.mysite.com/mypage.aspx?title=<SharePointWebControls:FieldValue id="PageTitle" FieldName="Title" runat="server"/>'>CLICK HERE!</a>

(テキストに引用符があると失敗することに注意してください)

私が見る別の解決策は、いくつかのjs/jqueryを使用することです(実際、ほぼ同じ解決策です):

$('selectorForYourA').attr("href", 'http://www.mysite.com/mypage.aspx?title=<SharePointWebControls:FieldValue id="PageTitle" FieldName="Title" runat="server"/>');
于 2012-09-14T13:52:50.827 に答える