JqG​​rid自定义搜索工具栏事件处理程序

我创建了一个带有下拉列表的jqGrid网格,这个列表(由于开发限制)需要加载一次,这样所有返回的数据都可以被过滤,所有这些都很酷,

当下拉列表发生变化时,问题就会到来,尽管大多数过滤/搜索都是在客户端完成的,我需要下拉列表来触发一个调用,它将使用下拉列表中新添加的参数来刷新页面。

我附上了构建工具栏搜索的代码段,但我不知道如何在更改选择值时添加捕获事件处理函数的功能,在这种情况下,我需要执行非标准代码 - 例如函数callNewData()

colNames:["Rent Due Date ","Tenant","Description","Address","Payment Ref.","Rent     Amount","Outstanding","Amount     Received","Confirm?","tenancyID","tenantID","rentID","existingRent"],
    colModel :[{
        name:"rentDueDate", 
        index:"rentDueDate", 
        align:"center", 
        width:"130", 
        search:true, 
        stype:"select",
        searchoptions: {
            value: "all:All;due:Due;overdue:Overdue;future:+1 Week;" ,
            defaultValue:"due"
        }
    },

在搜索选项(或colModel)中,我会放置onChange事件处理程序吗?


对不起,但目前还不清楚你确切的问题。 如果用户从下拉列表中选择一个选项,那么jqGrid将自动使用用户选择的过滤器重新加载网格。 如果使用本地datatype那么过滤将由jqGrid在内部完成。 如果您使用datatype: "json"datatype: "xml"而不使用loadonce: true则jqGrid会向服务器发送请求,将有关过滤器的信息附加到标准参数列表中。

如果你真的需要在<select>处理onChange事件,那么你需要在dataEvents定义change事件处理程序:

searchoptions: {
    value: "all:All;due:Due;overdue:Overdue;future:+1 Week;",
    defaultValue: "due",
    dataEvents: [ 
        {
            type: "change",
            fn: function (e) {
                // some code which will be executed onChange
            }
        }
    ]
}
链接地址: http://www.djcxy.com/p/25955.html

上一篇: JqGrid custom search toolbar event handlers

下一篇: Performance Difference between client side jqgrid vs server side jqGrid