次の効果を実現します
[デモにジャンプ] をクリックしてデモの例に直接ジャンプし、次のようにクエリ条件を入力します:
jeecg は easyui を使用するため、< a のようなものを直接使用することはできません。 href="xxxx.do?xxx"> この方法でジャンプしますが、まだ方法があります。 まず、次のコードを plug-inaccordionjsleft_shortcut_menu.js に追加します。上記のメソッドはすべて元の addTab メソッドをコピーします。これは、タブがすでに開いている場合は update メソッドを使用してタブを更新します。
次に、jeecgNoteList.jsp を例として、他のページにジャンプする必要がある場所に次のコードを追加します:
function goToTab(subtitle, url, icon) { // begin author:屈然博 2013-7-12 for:解决firefox 点击一次请求两次的问题 var progress = $("div.messager-progress"); if(progress.length){return;} // begin author:屈然博 2013-7-12 for:解决firefox 点击一次请求两次的问题 rowid=""; $.messager.progress({ text : loading, interval : 200 }); if (!$('#maintabs').tabs('exists', subtitle)) { //判断是否进行iframe方式打开tab,默认为href方式 if(url.indexOf('isHref') != -1){ $('#maintabs').tabs('add', { title : subtitle, href : url, closable : true, icon : icon }); }else{ $('#maintabs').tabs('add', { title : subtitle, content : '<iframe src="' + url + '" frameborder="0" style="border:0;width:100%;height:99.4%;"></iframe>', closable : true, icon : icon }); } } else { $('#maintabs').tabs('select', subtitle); if(url.indexOf('isHref') != -1){ $('#maintabs').tabs('update', { tab : $('#maintabs').tabs('getSelected'), options : { href : url } }); } else { $('#maintabs').tabs('update', { tab : $('#maintabs').tabs('getSelected'), options : { content : '<iframe src="' + url + '" frameborder="0" style="border:0;width:100%;height:99.4%;"></iframe>' } }); } $.messager.progress('close'); } // $('#maintabs').tabs('select',subtitle); tabClose();}
対応する js:
<t:dgFunOpt funname="toDemo(id)" title="跳转到demo" />
リンクを処理するには encodeURIComponent メソッドを使用する必要があることに注意してください。そうでなければ、リンクに引用符などの特殊文字が含まれている場合、パラメータを処理せずに正常に渡すことができません。
次に、jeecgDemoList.jsp を例として、ターゲット インターフェイスに次のコードを追加します。
function toDemo() { var url = "jeecgDemoController.do?jeecgDemo&selectedParams=" + encodeURIComponent("{\"sex\":0,\"createDate_begin\":\"2015-03-28\",\"createDate_end\":\"2015-04-14\"}"); window.parent.goToTab('Demo示例',url,'default') }
jeecgDemoList に似た単語は jeecg によって生成されるため、これらの単語は、実際の状況。