在jqGrid中,我可以获得仅具有特定值的行数吗?

时间:2016-01-15 02:41:18

标签: jquery jqgrid

我在获取所需的行数时遇到问题,而不是网格的所有行。

我有一个如下网格:

enter image description here

它叫做reportingList,当我说出像

这样的东西时
var listApp = $("#reportingList").jqGrid('getGridParam', records');

在这种情况下,它将返回3.

但是,我想弄清楚如何获得类型等于Approval的行数。

因此,在上面的情况中,由于有两行作为其类型的批准,因此输出应该是2而不是3。

以下是展示和我的代码的一部分:

enter image description here

$("#employeeList").jqGrid(

(跳过)

gridComplete : function(){
    $("#btnApprovalCon").on('click', function() {                                   
        var list = $("#employeeList").jqGrid ('getGridParam', 'selarrrow'); //arrayList                 
        if(list != null){
            var reportListIDs = $("#reportingList").jqGrid('getDataIDs');
            list = list.filter(function(val) {
                return reportListIDs.indexOf(val) == -1;
            });
            if(list.length > 0){
                $.each(list, function(i,v){
                    var rowData = $("#employeeList").jqGrid('getRowData', v);
                    var data = {appset_employeeId: rowData.employeeId, appset_department: rowData.department,
                        appset_position:rowData.title,         
                        appset_employeeName:rowData.employeeName, 
                        type:'Approval'}
                    $("#reportingList").jqGrid('addRowData', rowData.id, data);
                });
            }
        }
        var listApp = $("#reportingList").jqGrid('getGridParam', 'records'); 
        if (listApp > 0) {
            $(".btnSaveRep").button("option", "disabled", false);
        };
    });
},

因此,从employeeList网格中,用户选择一行并单击四个按钮。如果他们点击了批准,它将被添加到reportingList中,其类型为批准。

我不在这里发帖,但我有相同的按钮来添加一行作为协议。

我想在reportingList中有五个批准行时禁用批准按钮。

提前谢谢。

仅供参考,我正在使用Guriddo jqGrid ver 4.8.2。

1 个答案:

答案 0 :(得分:1)

我解决了我的问题如下:

root = Tk()
S = Scrollbar(root)
T = Text(root, height=4, width=50)
S.pack(side=RIGHT, fill=Y)
T.pack(side=LEFT, fill=Y)
S.config(command=T.yview)
T.config(yscrollcommand=S.set)
quote = """HAMLET: To be, or not to be--that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune
Or to take arms against a sea of troubles
And by opposing end them. To die, to sleep--
No more--and by a sleep to say we end
The heartache, and the thousand natural shocks
That flesh is heir to. 'Tis a consummation
Devoutly to be wished."""
T.insert(END, quote)
mainloop(  )

def donothing():
   filewin = Toplevel(root)
   button = Button(filewin, text="Do nothing button")
   button.pack()
   filemenu.entryconfig("History of Mac and Pc", state="disabled")

root = Tk()

root.title("Mac vs Pc Quiz")
menubar = Menu(root)
filemenu = Menu(menubar, tearoff=0)
filemenu.add_command(label="Shakespeare",command=history_pc)
filemenu.add_command(label="Hamlet", command=donothing)



filemenu.add_separator()

filemenu.add_command(label="Exit", command=root.quit)
menubar.add_cascade(label="English", menu=filemenu)



root.config(menu=menubar)
root.mainloop()

获取reportingList的信息。

然后当它的类型等于"批准",加上计数。

最后,当它的计数变为5时,禁用按钮。

此外,对于用户选择五行以上并尝试一次添加这些行的情况,我将其设置为删除除前5行之外的额外行。