有没有人有使用jqgrid' editGridRow'形式自动减少。 我已经使用了#edit editGridRow'添加和编辑网站上的列,它显示良好。然而, 我发现了一些奇怪的事情。如果两者都添加了网格形式,则网格形式会自动减少。和'编辑'导航按钮交替连续点击。 以下是我的代码中的部分内容。
.jqGrid("navButtonAdd", pager_selector, {
caption: 'Add',
buttonicon: 'icon-pencil gray',
onClickButton: function() {
jQuery(grid_selector).jqGrid('editGridRow',"new",{
addCaption : "Add Blacklist Card",
width : 450,
//resize : true,
reloadAfterSubmit:true,
closeAfterAdd:true,
closeAfterEdit: true,
beforeInitData:setAddInit('add'),
beforeShowForm : function(form){
/*//방법1
$.get('/jqGrid/getblistcardList/?m_type=blist', function(data,status){
var $grid = $('#CARD_NUMBER').val(data);
});
// var $grid = $('#CORPORATE_ID').val('as3fi8811sd');*/
},
afterSubmit: function(res, data) {
setEnd('add');
//alert('data : '+data);
if(res.responseText == "success") {
//alert('저장 되었습니다.');
} else {
//alert('저장에 실패했습니다.');
}
return ['success','message','new_id'];
}
});
},
position:"last",
title : "Add Blacklist Card"
})
.jqGrid("navButtonAdd", pager_selector, {
caption: 'Edit',
buttonicon: 'icon-edit blue',
onClickButton: function() {
//alert('Editing Row');
var gr = jQuery(grid_selector).jqGrid('getGridParam','selrow');
if( gr != null ) jQuery(grid_selector).jqGrid('editGridRow',gr,{
editCaption : "Edit Blacklist Card",
width : 450,
reloadAfterSubmit:true,
closeAfterEdit: true,
beforeInitData:setAddInit('edit'),
beforeShowForm: setEditeForm,
afterSubmit: function(res, data) {
setEnd('edit');
if(res.responseText == "success") {
//alert('Edit Completely');
} else {
// alert('Edit Fail');
}
return ['success','message','new_id'];
}
});
else alert("Please Select Row");
},
position:"last",
title : "Edit Blacklist Card"
})
我想知道是否基本上设置了height属性。我怎样才能解决这个问题? 请告诉我。谢谢。
答案 0 :(得分:0)
这似乎是jqGrid 4.6中的一个错误。作为一种解决方法,我建议使用以下onInitializeForm
:
onInitializeForm: function ($form) {
$form.css({height: "auto"});
$form.closest(".ui-jqdialog").css({height: "auto"});
}
请参阅the demo。
以同样的方式,您可以将height
和width
都设置为"auto"
:
$.extend(true, $.jgrid.edit, {
beforeInitData: function () {
$("#editmod" + this.id).remove();
},
onInitializeForm: function ($form) {
$form.css({height: "auto", width: "auto"});
$form.closest(".ui-jqdialog").css({height: "auto", width: "auto"});
},
width: "auto"
});
请参阅one more demo。
更新:该错误似乎在jqGrid 4.7中得到修复。请参阅使用4.6的the demo并重现问题,只需打开编辑表单,关闭它并再次打开它。 The next demo使用我在回答中建议的修复程序。 One more demo使用无修复,它使用jqGrid 4.7。可以看出这里不存在上述问题。