リスト要素が添付されたページがあります。そのリストのアイテム数を確認するにはどうすればよいですか?レンダリングタグ、asp、またはその他の手法を使用できます(機能する限り)。
4 に答える
レンダリングタグのドキュメントを読むより良い方法でこれを行うことが可能かもしれないと私は信じています
したがって、これを使用してリスト要素を取得します
Context:CurrentPage.Elements.GetElement(lst_myPages).Value
Valueプロパティは、リストアイテムのページコレクションを返す必要があるため、次のことができるようになります。
Context:CurrentPage.Elements.GetElement(lst_myPages).Value.Count
<!IoRangePreExecute>
<% lst_myPagesSize = 0 %>
<!IoRangeList>
<% lst_myPagesSize = lst_myPagesSize + 1%>
<!IoRangeRedDotMode><!--[if !IE]><%lst_myPages%><![endif]--><!/IoRangeRedDotMode>
<!/IoRangeList>
<!/IoRangePreExecute>
これが最速の方法だと思います。最初のカウンター=0。次に、リスト範囲でカウンターをインクリメントします(リストプレースホルダーもそのブロックに含めることに注意してください)。その後、カウンターに値が表示されます。
どうやら、これを行う唯一の方法は、リストをループして、各アイテムを数えることです。
<reddot:cms>
<foreach itemname="testList"
object="Context:CurrentPage.Elements.GetElement(lst_myPages).Value"
countername="listCounter">
</foreach>
</reddot:cms>
その場合、長さは次のようになります。
<%!! Store:listCounter !!%>
OpenTextでは、このレンダリングタグを使用してリストの長さを取得します(リスト要素の名前:lst_Navigation):
<%!! Context:CurrentPage.GetElementByName(lst_Navigation).GetLinkedContents().Count !!%>
Context / RDObj:ObjectLoader Context(別名:RDObj)により、管理サーバーのオブジェクトにアクセスできます
CurrentPage:現在のページからページオブジェクトを返します
GetElementByName:名前でページ要素を取得するためのページオブジェクトからのメソッド
GetLinkedContents:LinkListオブジェクトを返します
カウント:LinkList要素の数を返します