可以使jqGrid搜索框留在页面上?

时间:2011-04-16 17:07:23

标签: javascript search jqgrid

现在,我必须单击jqGrid搜索图标以弹出搜索框。我想要做的是始终在网格上方(而不是弹出窗口)打开搜索框。我没有在他们的演示中看到任何东西,但我希望有人做过或知道如何。

3 个答案:

答案 0 :(得分:8)

最简单的方法就是

var grid = $("#list"),
    prmSearch = {multipleSearch:true,overlay:false};

grid.jqGrid({
    // all jqGrid parameters
});

// next line is optional
grid.jqGrid('navGrid','#pager',
            {add:false,edit:false,del:false,search:true,refresh:true},
            {},{},{},prmSearch);

// create the searching dialog
grid.searchGrid(prmSearch);

// find the div which contain the searching dialog
var searchDialog = $("#fbox_"+grid[0].id);

// make the searching dialog non-popup
searchDialog.css({position:"relative", "z-index":"auto"});

您可以直接查看结果here。要在搜索对话框和网格上删除边框,您还可以执行以下操作:

searchDialog.addClass("ui-jqgrid ui-widget ui-widget-content ui-corner-all");
searchDialog.css({position:"relative", "z-index":"auto", float:"left"})
var gbox = $("#gbox_"+grid[0].id);
gbox.before(searchDialog);
gbox.css({clear:"left"});

它将搜索对话框移到“gbox_list”div。

之外

您可以看到here的最终解决方案。

答案 1 :(得分:3)

这是我对jqgrid的固定版本> 4.3

var searchDialog = $("#searchmodfbox_"+grid[0].id);    
    searchDialog.addClass("ui-jqgrid ui-widget ui-widget-content ui-corner-all");
    searchDialog.css({position:"relative", "z-index":"auto", "float":"left"})    
    var gbox = $("#gbox_"+grid[0].id);
    gbox.before(searchDialog);
    gbox.css({clear:"left"});

答案 2 :(得分:1)

这是最简单的方法,可以帮助某人使jq网格搜索框始终保持在页面上(如弹出窗口),直到点击关闭。

$("#grid").searchGrid({ closeAfterSearch: false } );
$("#grid").searchGrid({ closeOnEscape: false } );