このSearch demoに従い、指定された属性名のみを検索するように拡張しようとしています。
属性名なしで機能し、一致する ID の配列を返します。しかし、属性名に何かを指定すると、検索は空の配列を返します。属性名には魔法のフォーマットが必要だと思います。
だから現在私は持っています:
function search() {
var txtArea = document.getElementById("TextAreaResult");
var searchStr = document.getElementById("SearchString").value;
var searchProperties = document.getElementById("SearchProperties").value;
if (searchStr.length == 0) {
txtArea.value = "no search string.";
return;
}
var viewer = viewerApp.getCurrentViewer();
viewer.clearSelection();
if (searchProperties.length == 0)
viewer.search(searchStr, searchCallback, searchErrorCallback);
else {
var searchPropList = searchProperties.split(',');
viewer.search(searchStr, searchCallback, searchErrorCallback, searchPropList);
}
}
ここで、searchProperties はユーザー入力 (「名前」など) であり、searchPropList は単一の要素配列になります。
同じ例は、各プロパティの displayName と displayCategory を返す getProperties() にも対応していますが、別の内部名は表示されません。
ここから明らかな何かが欠けているのでしょうか、それとも「名前」を何らかの方法で変換する必要がありますか?
または、誰かがdisplayNameではなく本当の名前をリストする例を持っていますか?