AJAX
現在、特定のページに結果フィルタリングを実装しようとしています。
(クライアント側で) ドロップダウンを作成してumbraco
、値として前値 ID を持つようにしました。
次に、テキスト値ではなく、この ID をサーバーに送信します。次に、コンテンツをループして、同じ ID を持つアイテムを見つけます。
ただし、問題は、プロパティから値 id を取得する方法がわからないことです。すべてがテキスト値または 0 値を返します。
これは で実行されていApiController
ます。
これらは私が試したすべてのオプションです:
IPublishedContent root = Umbraco.TypedContentAtRoot().First();
var downloads = root.Children.Where(q => q.Name == "Downloads").SingleOrDefault();
foreach (var item in downloads.Children)
{
var test = item.GetPropertyValue<int>("classification");
var testing = item.GetProperty("classification");
var testVal = testing.DataValue;
var testValToo = testing.GetValue<int>();
var testThree = testing.Value;
}
これらは順番に結果です:
- 0
- IPublishedProperty
- "textValue"
- 0
- "textValue"
ドロップダウン リストのプロパティから選択した値の ID を取得することは可能ですか? または、値を比較するための唯一のオプションと一致する文字列ですか?
編集:気にしないで、解決策を見つけました。他の誰かがそれを必要とする場合に備えて、ここに回答を投稿してください。
データ型ドロップダウンリストを使用していました。dropdownlist:publishing キーを使用する必要がありました。ドロップダウンリストは値のみを返します。ただし、dropdownlist:publishing キーは、テキスト値ではなく、prevalue id を返します。