有沒有辦法在添加或編輯一行時避免窗體關閉。 Jqgrid在我們的應用程序中工作得很好,但是有一個小問題,當用戶通過表單編輯來編輯或創建一行,並且用戶在表單的模式之外單擊時,模式關閉並且更改丟失。避免這種行爲有可能嗎?如何避免在JQgrid中編輯或添加新行時單擊外部模態窗口時關閉窗體?
6
A
回答
6
解決!
只是,一定要在您的網格編輯或添加選項中設置模態:true,但請確保您已經下載了jqGrid whith模態編輯。見http://www.trirand.com/blog/?page_id=6。
這裏是我的網格(尋找//選項),單擊保存在何時或取消按鈕現在的模式只關閉:
jQuery("#gridTipo").jqGrid(
{
url : 'obtenerTipoDetallePorTipo.do?idTipo=0',
datatype : "json",
colNames : [ 'ID', 'Codigo', 'Descripción', 'Tabla',
'CodPadre', 'Nombre', 'Idioma' ],
colModel : [ {
name : 'id',
index : 'id',
autowidth:true,
hidden : true,
width : 90,
editable : true,
editoptions : {
readonly : true,
size : 10
}
}, {
name : 'codigoTipo',
index : 'codigoTipo',
autowidth : true,
editable : true,
formoptions : {
rowpos : 2,
label : "Codigo",
elmprefix : "(*)"
},
editrules : {
required : true
}
}, {
name : 'descripcionTipo',
index : 'descripcionTipo',
autowidth : true,
editable : true,
editoptions : {
size : 20
},
formoptions : {
rowpos : 3,
label : "Descripcion",
elmprefix : "(*)"
},
editrules : {
required : true
}
}, {
name : 'tabla',
index : 'tabla',
autowidth : true,
editable : true,
formoptions : {
rowpos : 4,
label : "Tabla",
elmprefix : "(*)"
},
editrules : {
required : true
}
}, {
name : 'codpadre',
index : 'codpadre',
hidden : true,
autowidth:true,
editable : true,
editoptions : {
readonly : true,
size : 25,
defaultValue : function() {
var codPad = jQuery("#codPadreH").val();
return codPad;
}
}
}, {
name : 'nombre_tipo',
index : 'nombre_tipo',
autowidth : true,
editable : true,
editoptions : {
size : 20
},
formoptions : {
rowpos : 6,
label : "Nombre",
elmprefix : "(*)"
},
editrules : {
required : true
}
}, {
name : 'idioma',
index : 'idioma',
autowidth : true,
editable : true,
edittype : "select",
editoptions : {
value : "${idiomasDin}"
},
formoptions : {
rowpos : 7,
elmprefix : " "
}
} ],
rowNum : 10,
pager : jQuery('#pgridTipo'),
sortname : 'id',
sortorder : "desc",
viewrecords : true,
width : '620',
height : "250",
editurl : "doPost.do",
shrinkToFit:false,
caption : "Administracion Tipos"
}).navGrid('#pgridTipo', {
add : true,
search : false,
del : false
}, //options
{ modal: true,
height : 220,
width : 500,
reloadAfterSubmit : true,
recreateForm : true,
closeAfterEdit : true,
beforeInitData : function(FrmGrid_gridTipo) {
jQuery("#gridTipo").setColProp('codigoTipo', {
editoptions : {
readonly : true,
size : 20
}
});
jQuery("#gridTipo").setColProp('tabla', {
editoptions : {
readonly : true,
size : 20
}
});
jQuery("#gridTipo").trigger('reloadGrid');
//alert("hola");
}
}, // edit options
{
modal: true,
height : 220,
width : 500,
reloadAfterSubmit : true,
closeAfterAdd : true,
beforeInitData : function(FrmGrid_gridTipo) {
jQuery("#gridTipo").setColProp('codigoTipo', {
editoptions : {
readonly : false,
size : 20
}
});
jQuery("#gridTipo").setColProp('tabla', {
editoptions : {
readonly : false,
size : 20
}
});
jQuery("#gridTipo").trigger('reloadGrid');
//alert("hola");
},
recreateForm : true
}, // add options
{
reloadAfterSubmit : false
}, // del options
{} // search options
);
3
模式:真有它的問題。
當您從模式:true的jqgrid editform中引發另一個jquery對話框。 你不能在新的對話框中輸入任何東西,因爲所有的鍵盤(只要輸入是OK)事件就會被模式:true停止。
所以問題仍然存在。
0
嘗試以下里面添加/編輯選項
modal: true,
jqModal:true
相關問題
- 1. 單擊外部或ESC時關閉模式窗口
- 2. 用戶在窗體窗口外單擊時如何關閉窗體?
- 3. 如何在窗口外單擊時關閉/隱藏窗口?
- 4. 關閉子窗口時避免MessageBox
- 5. 如何在單擊父窗體時關閉子窗體?
- 6. 如何在外部點擊時關閉彈出窗口?
- 7. jQuery:如何在外部點擊時關閉彈出窗口?
- 8. 如何在點擊蒙版時關閉模態窗口?
- 9. HTML5 CSS3模式窗口,點擊外部時關閉
- 10. 在窗口關閉時運行窗體窗體線程
- 11. 如何通過在模態窗口外單擊來關閉模態?
- 12. 如何關閉KendoUI模式窗口點擊覆蓋外窗口時?
- 13. 在javascript中關閉父窗口時如何關閉子窗口?
- 14. 關閉模態窗口,點擊模態外的任何地方
- 15. 關閉模式窗體並在點擊按鈕時打開一個新窗口
- 16. JQGrid編輯窗體關閉當點擊表格
- 17. monomac - 如何在單擊主窗口中的按鈕時關閉子窗口
- 18. 如何從Jqgrid單元格打開一個小窗體或窗口編輯
- 19. 在外部點擊時自動關閉JFrame窗口
- 20. 如何在主窗口關閉時關閉自定義窗口?
- 21. 模態窗體關閉時的回調
- 22. C# - 如何關閉主窗體和子窗體(只有當主窗體關閉時子窗口才會關閉)
- 23. 如何在子窗口關閉時提交父窗口表單
- 24. 當任何鏈接被點擊時Javascript關閉模態窗口
- 25. 頂部模態窗體關閉嵌套模態窗體關閉所有其他模態窗體?
- 26. 當用戶點擊外部彈出窗口時關閉引導彈出窗口
- 27. 如何避免用戶點擊外部彈出窗口javascript?
- 28. 當用戶點擊外部時關閉WPF對話窗口
- 29. 當點擊外部時,CMFCColorButton彈出窗口不關閉
- 30. 當用戶點擊外部時關閉窗體
我也面臨同樣的問題。 – 2012-07-20 08:39:22