为什么FireFox和IE会出现jqgrid子网格NavButtonAd自定义按钮错误?

为什么FireFox和IE会出现jqgrid子网格NavButtonAd自定义按钮错误?,jqgrid,pager,subgrid,Jqgrid,Pager,Subgrid,当自定义按钮添加到子网格(使用jqgrid NavButtonAd)但仅在FireFox和IE中时,nav按钮(无论是在toppager还是普通寻呼机上)是否存在错误?它在Chrome中似乎工作/看起来很好-在Firefox和IE中,父网格的自定义按钮也工作得很好,这只是一个外观问题/悬停和大小问题,仅在这些浏览器的网格中作为子网格出现 这是一个按钮大小和悬停位置的错误 看看这张图片,看看我的意思: 我的代码(在子网格的subGridRowExpanded属性中)如下所示: jQuery("#

当自定义按钮添加到子网格(使用jqgrid NavButtonAd)但仅在FireFox和IE中时,nav按钮(无论是在toppager还是普通寻呼机上)是否存在错误?它在Chrome中似乎工作/看起来很好-在Firefox和IE中,父网格的自定义按钮也工作得很好,这只是一个外观问题/悬停和大小问题,仅在这些浏览器的网格中作为子网格出现

这是一个按钮大小和悬停位置的错误

看看这张图片,看看我的意思:

我的代码(在子网格的subGridRowExpanded属性中)如下所示:

jQuery("#" + subgrid_table_id).jqGrid('navButtonAdd','#RedirectsTable_' + row_id + '_t_toppager_left',
{
    caption : "Add New Region Url... ", buttonicon : 'ui-icon-plus',
    id : "btnAddNewRegionUrl_" + subgrid_table_id,
    onClickButton : function()
    {
        addNewRegionUrlRow("#" + subgrid_table_id, row_id);
    }
}).jqGrid('navButtonAdd','#RedirectsTable_' + row_id + '_t_toppager_left',
        {
            caption : "Copy All ", buttonicon : 'ui-icon-copy',
            id : "btnCopyRegionUrls_" + subgrid_table_id,
            onClickButton : function()
            {
                copyRegionUrlRows(row_id);
            }
        }); // etc chaining them like this.  Also, I add buttons in this manner for the parent grid and to the bottom pager as well
如果您能帮助解决此问题,我们将不胜感激


谢谢!:)

我仍然认为这是一个bug,并感谢任何人的帮助,解释为什么这只发生在子网格中,只发生在FireFox和IE中,而不发生在Chrome中

然而,我想我会发布一个不是解决这个问题的“正确方法”,但它确实在美容方面起作用

在父网格的colModel的subGridRowExpanded属性中,我在gridComplete事件属性中添加了以下代码,以便在网格完成并准备好使用后设置这些子网格导航按钮的宽度。至少可以说,这是一种不雅的黑客行为,但它确实有效

显然,这是硬编码的宽度,这是令人讨厌的-并不会工作,如果按钮文本是动态的数据库或东西,但对我来说,这是好的

因此,我检查了Chrome报告的“正确”宽度,然后添加了此代码(显然用您的navButtonAdd按钮ID替换我的):

希望这是有用的-但如果你有任何意见或建议,请插话解释为什么会这样@奥列格


谢谢:)

我仍然认为这是一个bug,并感谢任何人的帮助,为什么这只发生在子网格中,只发生在FireFox和IE中,而不是Chrome

然而,我想我会发布一个不是解决这个问题的“正确方法”,但它确实在美容方面起作用

在父网格的colModel的subGridRowExpanded属性中,我在gridComplete事件属性中添加了以下代码,以便在网格完成并准备好使用后设置这些子网格导航按钮的宽度。至少可以说,这是一种不雅的黑客行为,但它确实有效

显然,这是硬编码的宽度,这是令人讨厌的-并不会工作,如果按钮文本是动态的数据库或东西,但对我来说,这是好的

因此,我检查了Chrome报告的“正确”宽度,然后添加了此代码(显然用您的navButtonAdd按钮ID替换我的):

希望这是有用的-但如果你有任何意见或建议,请插话解释为什么会这样@奥列格


谢谢:)

忘了添加我使用的是最新的(截至本文)jqgrid 4.1.2和jquery 1.6.2,如果有区别的话…忘了添加我使用的是最新的(截至本文)jqgrid 4.1.2和jquery 1.6.2,如果有区别的话。。。
 gridComplete : function()
    {
    //hack for FF & IE widths dont work in subgrid nav buttons- bug in jqgrid?
    $("#btnAddNewRegionUrl_" + subgrid_table_id).children(".ui-pg-div").width("133px");
    $("#btnCopyRegionUrls_" + subgrid_table_id).children(".ui-pg-div").width("63px");
    $("#btnPasteRegionUrls_" + subgrid_table_id).children(".ui-pg-div").width("63px");
    }