子頁面刷新父頁面表格失效,window.parent.$('#xxx').datagrid('reload')失效

之前遇到過兩次這種現象,下面是應用,運行起來正常,不會報錯,但是萬惡的IE就是不刷新
1.表格的id取錯了

$.ajax({
		url : url,
		// async : false,
		type : "POST",
		data : $('#' + formId).serializeArray(),
		success : function(data) {
			var jsonObject = jQuery.parseJSON(data);
			if (jsonObject == 'success') {
				layer.confirm('操作成功,是否關閉窗口?', {
					btn: ['確定', '取消']
				}, function () {
					// 關閉彈出框口刷新表格
					window.parent.$('#dg').datagrid('reload');
					layer_close();
				}, function () {

				});
 ---------------------------
 然後我就認真的找了找原因,原來是父頁面中的表格id取的不對!!!我像一頭驢一樣悶頭測試,問題卻出在最傻的地方,希望你不是。
2.父頁面datagrid的表格row是通過後來追加的,不存在url,你似乎沒看懂什麼意思,別慌,看代碼:
	

$(’#dg’).datagrid({
loadMsg : ‘請稍等…’,
fitColumns : true,
singleSelect : true,// 選中一行
remoteSort:false,//頁面刷新
width : “100%”,
height : “100.2%”,
rownumbers : true,
hideCollapsedContent : false,
columns : [ [ {
field : ‘frequency’,
title : ‘頻率’,
align : ‘center’,
sortable : true,
width : ‘15%’,
sorter:function(a,b){
if(parseFloat(a)){
a = parseFloat(a);
}
if(parseFloat(b)){
b = parseFloat(b);
}
return (a>b?1:-1);
}
}
//*********************************************************************
//追加row的方式
$(’#dg’).datagrid(‘insertRow’, {
index : 0, // 索引從0開始
row : {
frequency : result.freq,
status : result.status,
channelName:result.channelName,
launcher:result.launcher,
updateTime:result.updateTime,
score_sn : result.sn,
level : result.soundLevel,
}
});

---------------------------
沒錯,當初始化datagrid的時候,如果沒有指定url,你就算怎麼用下面的方式都是刷新不了的,datagrid沒有地址,它找誰要數據?

// 關閉彈出框口刷新表格
window.parent.$(’#dg’).datagrid(‘reload’);

---------------------------
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章