mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-20 00:20:44 +08:00
add multiple grid support to gridData
This commit is contained in:
@@ -33,7 +33,7 @@
|
|||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
var $e = $(this);
|
var $e = $(this);
|
||||||
var settings = $.extend({}, defaults, options || {});
|
var settings = $.extend({}, defaults, options || {});
|
||||||
gridData.settings = settings;
|
gridData[$e.prop('id')] = {settings: settings};
|
||||||
|
|
||||||
var enterPressed = false;
|
var enterPressed = false;
|
||||||
$(document).on('change.yiiGridView keydown.yiiGridView', settings.filterSelector, function (event) {
|
$(document).on('change.yiiGridView keydown.yiiGridView', settings.filterSelector, function (event) {
|
||||||
@@ -60,7 +60,7 @@
|
|||||||
|
|
||||||
applyFilter: function () {
|
applyFilter: function () {
|
||||||
var $grid = $(this);
|
var $grid = $(this);
|
||||||
var settings = gridData.settings;
|
var settings = gridData[$grid.prop('id')].settings;
|
||||||
var data = {};
|
var data = {};
|
||||||
$.each($(settings.filterSelector).serializeArray(), function () {
|
$.each($(settings.filterSelector).serializeArray(), function () {
|
||||||
data[this.name] = this.value;
|
data[this.name] = this.value;
|
||||||
@@ -86,12 +86,12 @@
|
|||||||
setSelectionColumn: function (options) {
|
setSelectionColumn: function (options) {
|
||||||
var $grid = $(this);
|
var $grid = $(this);
|
||||||
var id = $(this).prop('id');
|
var id = $(this).prop('id');
|
||||||
gridData.selectionColumn = options.name;
|
gridData[id].selectionColumn = options.name;
|
||||||
if (!options.multiple) {
|
if (!options.multiple) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var inputs = "#" + id + " input[name='" + options.checkAll + "']";
|
var inputs = "#" + id + " input[name='" + options.checkAll + "']";
|
||||||
$(document).off('click.yiiGridView', inputs ).on('click.yiiGridView', inputs, function () {
|
$(document).off('click.yiiGridView', inputs).on('click.yiiGridView', inputs, function () {
|
||||||
$grid.find("input[name='" + options.name + "']:enabled").prop('checked', this.checked);
|
$grid.find("input[name='" + options.name + "']:enabled").prop('checked', this.checked);
|
||||||
});
|
});
|
||||||
$(document).off('click.yiiGridView', inputs + ":enabled").on('click.yiiGridView', inputs + ":enabled", function () {
|
$(document).off('click.yiiGridView', inputs + ":enabled").on('click.yiiGridView', inputs + ":enabled", function () {
|
||||||
@@ -102,7 +102,7 @@
|
|||||||
|
|
||||||
getSelectedRows: function () {
|
getSelectedRows: function () {
|
||||||
var $grid = $(this);
|
var $grid = $(this);
|
||||||
var data = $grid.data('yiiGridView');
|
var data = gridData[$grid.prop('id')];
|
||||||
var keys = [];
|
var keys = [];
|
||||||
if (data.selectionColumn) {
|
if (data.selectionColumn) {
|
||||||
$grid.find("input[name='" + data.selectionColumn + "']:checked").each(function () {
|
$grid.find("input[name='" + data.selectionColumn + "']:checked").each(function () {
|
||||||
@@ -119,7 +119,7 @@
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
data: function() {
|
data: function () {
|
||||||
return this.data('yiiGridView');
|
return this.data('yiiGridView');
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user