2
1
0
1 回答
- 210
恐らく以下に起票されている不具合に該当する問題です...
Cloud 版での報告となっていますが、
Server 版でも起きるとコメントされています。Workaround を試してみましたが、上手く動作せず
有用な回避策は無いように思えます...LiveSearch マクロを組み込む形で以下のユーザマクロを作成すると、
Enter の押下や虫眼鏡ボタンの押下で
期待する結果となるページを開くことができたように思えました。## @param Labels:title=Labels|type=string #set ($labelString = $paramLabels.replaceAll(", +", ",")) <ac:structured-macro ac:name="livesearch" ac:schema-version="1"> <ac:parameter ac:name="type">page</ac:parameter> <ac:parameter ac:name="labels">$labelString</ac:parameter> </ac:structured-macro> <script> (function() { var contextPath = Confluence.getContextPath(); AJS.$('.aui.aui-dd-parent').on('submit', function() { return false; }); AJS.$('.search-macro-button.aui-button').on('click', function() { var searchText = AJS.$('.search-macro-query > input')[0].value, urlLabelString = '${labelString}'.replace(/,\s+/g, function(all, letter) { return '","'; }), url = encodeURI(contextPath + '/dosearchsite.action?cql=siteSearch ~ "' + searchText + '" and label in ("' + urlLabelString + '")&queryString=' + searchText); location.href = url; }); })(); </script>
- Shuzaburo Doba
LiveSearch マクロを large サイズで使用する場合は
以下のようになるでしょうか...## @param Labels:title=Labels|type=string #set ($labelString = $paramLabels.replaceAll(", +", ",")) <ac:structured-macro ac:name="livesearch" ac:schema-version="1"> <ac:parameter ac:name="type">page</ac:parameter> <ac:parameter ac:name="labels">$labelString</ac:parameter> <ac:parameter ac:name="size">large</ac:parameter> </ac:structured-macro> <style> .new-live-search-button { display: none; } </style> <script> (function() { var contextPath = Confluence.getContextPath(); var $submitButton = AJS.$('.search-macro-button.aui-button'); // ボタンがなかったら追加する if ($submitButton.length === 0) { AJS.$('.search-macro-fields').append('<button type="submit" class="new-live-search-button"></button>'); } AJS.$('.aui.aui-dd-parent').on('submit', function() { return false; }); AJS.$('button.new-live-search-button').on('click', function() { var searchText = AJS.$('.search-macro-query > input')[0].value, urlLabelString = '${labelString}'.replace(/,\s*/g, function(all, letter) { return '","'; }), url = encodeURI(contextPath + '/dosearchsite.action?cql=siteSearch ~ "' + searchText + '" and label in ("' + urlLabelString + '")&queryString=' + searchText); location.href = url; }); })(); </script>
コメントを追加...
Confluence の LiveSearch マクロで、
Label の制限部分で複数のラベルを指定した際、
リアルタイムで表示されるプルダウンリストでは期待するページが表示されるのですが、
Enter を押下したり虫眼鏡マークのボタンを押下して
Confluence の検索画面に遷移すると検索結果が何もなくなってしまいます。
何か回避策はないでしょうか?