第一次寫博客,記錄工作中出現的問題!望對大家有用!
問題描述:使用dwz框架,頁面上的數據也是通過Ajax從後臺查詢展示動態生成的,現要點擊其中一條數據,將其關聯的其他數據信息以模態框的形式展示到頁面,
直接在其動態生成的數據後追加一行動態生成的a標籤連接,無奈眼高手低。刷刷的寫完,成果卻是頁面樣式丟失,信息展示也不是以模態框的形式,而是新打開的窗口。
解決方法:不能動態拼接a標籤,應該拼接button標籤,在選中button標籤時再將url地址拼接,詳細解釋看代碼中兩端註釋之間的字段
//字段原爲動態拼接的a標籤與連接地址,當對其點擊時會重新打開一個窗口連接,且樣式丟失
+"<td align='center'>" + "<a target='dialog' width='800' height='480' href='${BASE}/psbc/monitor.do?method=selectHis&&APPLICATION_ID="+id+"' >"+'查詢監控歷史'+"</a>"+ "</td>"
//現將其更改爲button標籤,Jquery選中此標籤時再爲其拼接url地址,更新後的代碼如下:
+"<td align='center'>"+" <button type='button' class='btnLook' οnclick='jumpDialog("+id+")'>監控歷史查詢</button></td>"
function refresh(){
try{
$.ajax({
type : "post",
dataType : "xml",
async : false,
url : "${BASE}/psbc/monitor.do?method=ajaxFunc",
success : function(date) {
var id="";
var str = "";
$(date).find("ROOT").find("XML_DATA").find("TABLE").each(function() {
var states=$(this).find('APPLICATION_STATE').text();
var showState="";
id=$(this).find('APPLICATION_ID').text();
if(states==0){
showState="<img src='${BASE}/common/ui/themes/default/images/green.png' alt='正常'>";
}else{
showState="<img src='${BASE}/common/ui/themes/default/images/red.png' alt='異常'>";
}
str += "<tr>" + "<td align='center'>" + $(this).find('APPLICATION_ID').text()
+ "</td>" + "<td align='center'>"
+ $(this).find('APPLICATION_NAME').text() + "</td>"
+ "<td align='center'>" + $(this).find('APPLICATION_IP').text() + "</td>"
+"<td align='center'>" + $(this).find('APPLICATION_PORT').text() + "</td>"
+"<td align='center'>" + showState+ "</td>"
/*字段原爲動態拼接的a標籤與連接地址,當對其點擊時會重新打開一個窗口連接,且樣式丟失
+"<td align='center'>" + "<a target='dialog' width='800' height='480' href='${BASE}/psbc/monitor.do?method=selectHis&&APPLICATION_ID="+id+"' >"+'查詢監控歷史'+"</a>"+ "</td>"
現將其更改爲button標籤,Jquery選中此標籤時再爲其拼接url地址如下*/
+"<td align='center'>"+" <button type='button' class='btnLook' οnclick='jumpDialog("+id+")'>XXX歷史查詢</button></td>"
+ "</tr>";
});
$("#task").html(str);
},
error : function() {
alert("服務器監控查詢失敗");
}
});
}catch(e){
clearInterval(sh);
}
}
function jumpDialog(a){
$.pdialog.open("${BASE}/psbc/monitor.do?method=selectMonitorHis&P_MONITORPARENT="+a,"showInfo","監控歷史窗口","width:400px,height:400px,max:true,mask:false");
}