各ポートレットで検索を行う際、各項目で絞込みを行うことができますが、この処理は項目を選択した際に onclickで以下のjavascriptが実行されます。
aipo.wiki.filterClick = function (portlet_id, thisnode, event) { var li = thisnode.parentNode; var ul = li.parentNode; var param = li.getAttribute("data-param");//liのdata-param aipo.wiki.filterSelect(ul, li); aipo.wiki.filteredSearch(portlet_id); } aipo.wiki.filteredSearch = function (portlet_id) { //filtertype var baseuri = dojo.byId("baseuri_" + portlet_id).value; var types = []; var params = []; dojo.query("ul.filtertype_" + portlet_id).forEach(function (ul) { //console.info(ul); var type = ul.getAttribute("data-type"); types.push(type); var activeli = dojo.query("li.selected", ul)[0]; if (activeli) { var param = activeli.getAttribute("data-param"); params.push(param); } else { params.push(ul.getAttribute("data-defaultparam")); } }); var q = dojo.byId("q" + portlet_id); var qs = [ ["filter", params.join(",")], ["filtertype", types.join(",")], ["keyword", q ? q.value : ""] ]; aipo.viewPage(baseuri, portlet_id, qs); }
最後の行にあるaipo.viewPageにおいて、テンプレートに記載してあるbaseuriにパラメータとしてbaseuriにqsをつけることで、SelectData内で値を読み込めるようにしています。