Jquery JQGrid搜索对话框:从下拉列表中选择列时,文本输入会调整大小
我正在使用jqGrid的搜索对话框,并根据此调整beforeShowSearch和afterRedraw事件中输入的文本大小Jquery JQGrid搜索对话框:从下拉列表中选择列时,文本输入会调整大小,jquery,jqgrid,Jquery,Jqgrid,我正在使用jqGrid的搜索对话框,并根据此调整beforeShowSearch和afterRedraw事件中输入的文本大小 这在初始加载和重置时非常有效,但是,正如该帖子答案的注释中所述,当从列droplist中选择新值时,文本输入会将其宽度调整为默认值。在选择新的droplist项时,如何保持文本输入的宽度 我想出了一个解决办法。如果有人知道另一种方法,请提供帮助。下面是我所做的:我在droplist上附加了一个.change()函数。此函数用于设置文本框的宽度值,从而有效地将其保持在原位。
这在初始加载和重置时非常有效,但是,正如该帖子答案的注释中所述,当从列droplist中选择新值时,文本输入会将其宽度调整为默认值。在选择新的droplist项时,如何保持文本输入的宽度 我想出了一个解决办法。如果有人知道另一种方法,请提供帮助。下面是我所做的:我在droplist上附加了一个.change()函数。此函数用于设置文本框的宽度值,从而有效地将其保持在原位。为了确保在设置.change()函数时存在droplist,我在beforeShowSearch事件的相同函数调用中设置了它。代码如下:
$(divId).jqGrid('navGrid', pagerId, { add: true, edit: false, del: false, search: true },
{}, //default for edit
{}, //default for add
{}, //delete disabled
{ //search
width: '750',
beforeShowSearch: function () {
//set textbox width
$(".searchFilter table td .input-elm").css('width', '300px');
//keep it in place with .change() on select
$(".searchFilter table td select").change(function () {
$(".searchFilter table td .input-elm").css('width', '300px');
});
return true;
},
{} // view parameters
);
当然,可以通过将.css调用提取到自己的函数中来消除重复。根据需要重构