[अक्टूबर 2011] 4.0 एपीआई, सही शिफ्ट-चयन बग, सरलीकृत चयन लूप का उपयोग करने के लिए अपडेट किया गया। 4.2.0 में परीक्षण किया गया।
मेरे जैसे, आप jqgrid में एक उचित एकाधिक चयन करें की जरूरत है - जहां ctrl एक समय में एक ही पंक्ति का चयन करता है, चुनें एकाधिक पंक्तियों का चयन करता है और न ही चयन साफ और 1 पंक्ति का चयन करता है - आप यह पाया है।
सबसे पहली बात: ग्रिड परिभाषा multiselect: true
सेट (मैं किसी अन्य एकाधिक चयन करें विकल्प सेट नहीं किया है)
अगला:gridComplete: function() {}
में grid.jqGrid('hideCol', 'cb');
सेट - इस चेक बॉक्स को छुपाता है अगर आप नहीं चाहते हैं उन्हें।
अंत में: मुख्य हिस्सा
beforeSelectRow: function (rowid, e) {
if (!e.ctrlKey && !e.shiftKey) {
$("#grid").jqGrid('resetSelection');
}
else if (e.shiftKey) {
var initialRowSelect = $("#grid").jqGrid('getGridParam', 'selrow');
$("#grid").jqGrid('resetSelection');
var CurrentSelectIndex = $("#grid").jqGrid('getInd', rowid);
var InitialSelectIndex = $("#grid").jqGrid('getInd', initialRowSelect);
var startID = "";
var endID = "";
if (CurrentSelectIndex > InitialSelectIndex) {
startID = initialRowSelect;
endID = rowid;
}
else {
startID = rowid;
endID = initialRowSelect;
}
var shouldSelectRow = false;
$.each($("#grid").getDataIDs(), function(_, id){
if ((shouldSelectRow = id == startID || shouldSelectRow)){
$("#grid").jqGrid('setSelection', id, false);
}
return id != endID;
});
}
return true;
}
समाप्ति - आशा है कि मदद करता है
मुझे लगता है कि न तो सच में जगह अपने माल को प्रदर्शित किया जाता है। – wmitchell
एसओ एक क्यूए साइट है ... आपने कोई सवाल नहीं पूछा ... एक ब्लॉग लिखें। मैं –
को बंद करने की कोशिश नहीं कर रहा हूं, यह अच्छा लगता है मुझे लगता है कि इसे रखने के लिए बेहतर जगह हो सकती है। यानी Jquery प्लगइन साइट पर। उत्साह देखने के लिए यह अच्छा है, लेकिन मैं नहीं चाहता कि एसओ खुले बाजार में बदल जाए। – wmitchell