在resizestop上调整大小后如何获得jqgrid列宽

时间:2012-11-22 05:34:44

标签: jquery jqgrid

我希望在调整大小后获得jqgrid列的新宽度。为此,我想使用resizestop事件。

我的jqgrid代码如下:

<sjg:grid id="gridtable" caption=" " dataType="json" 
                href="%{listurl}"
                gridModel="listMS_Departments"
                width="200"
                autowidth="true"

                pager="true" 
                pagerInput="true"
                pagerPosition="center"  
                rowList="15,30,50"
                rowNum="15"
                rownumbers="true"
                viewrecords="true"

                hidegrid="false"

                navigator="true"
                navigatorAdd="false"
                navigatorEdit="false"
                navigatorRefresh="false"
                navigatorSearch="false"
                navigatorDelete="false"
                navigatorSearchOptions="{showQuery: false,multipleSearch: false}"
                navigatorEditOptions="{closeAfterEdit:false,reloadAfterSubmit:true}"
                navigatorAddOptions="{
                                          reloadAfterSubmit:true,
                                          afterSubmit:function(response,postdata){
                                          return isError(response.responseText);
                }
                }"
                navigatorExtraButtons="{                            
                            hide : { 
                                title : 'Show/Hide', 
                                icon: 'ui-icon-wrench', 
                                topic: 'showcolumns'
                            }                                       
                        }"    
                onSelectRowTopics="rowselect"

                >
                <sjg:gridColumn id="deptCd" name="id" index="id" title="%{getText('department.code')}" resizable="true"
                    sortable="true" search="true" editable="true" editrules="{required:true,custom:true,custom_func:validateCapitalAlphanumeric}" key="true" editoptions="{maxlength :3}" formoptions="{elmsuffix:'  *'}" />
                <sjg:gridColumn id="deptNm" name="deptNm" index="deptNm" title="%{getText('department.name')}" resizable="true"
                    sortable="true" editable="true" edittype="text" editrules="{required:true}" formatter="String" editoptions="{maxlength :10}" formoptions="{elmsuffix:'  *'}"/>   
            </sjg:grid>

无论我尝试如下:

$('#gridtable_id').jqGrid({

                 resizeStop: function (newwidth,index) {
                 alert($("#gridtable_id").width());
            },

        });

'#gridtable_id'是jqgrid列标题的id在html中表示它是<th>标记的id。 在调整大小后,有人可以帮我获取jqgrid列的新宽度吗?

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式获得新宽度:

#p>方式#1:

resizeStop: function(newwidth, index) {
                 alert(newwidth);
            }

方式#2:

resizeStop: function () {
                 alert(this.newWidth);
            }

希望它有所帮助!