EasyUI Forum

General Category => EasyUI for jQuery => Topic started by: what_tahw on November 09, 2013, 08:31:49 AM



Title: is 'getSelected' method for propertyGrid not available in 1.3.4?
Post by: what_tahw on November 09, 2013, 08:31:49 AM
with version 1.3.4, when click outside PropertyGrid control (for example click a button to trigger read event), selected row would lost focus immediately, make it unable to read selected row.

same thing in demo page
http://www.jeasyui.com/demo/main/index.php?plugin=PropertyGrid&theme=default&dir=ltr&pitem=

version 1.3.3 seems do not have this issue.


Title: Re: is 'getSelected' method for propertyGrid not available in 1.3.4?
Post by: stworthy on November 09, 2013, 05:21:26 PM
Please download the updated datagrid plugin from http://www.jeasyui.com/easyui/plugins/jquery.datagrid.js, or override the 'updateRow' method of view as below:
Code:
<script>
$.extend($.fn.datagrid.defaults.view,{
updateRow: function(target, rowIndex, row){
var opts = $.data(target, 'datagrid').options;
var rows = $(target).datagrid('getRows');
$.extend(rows[rowIndex], row);
var css = opts.rowStyler ? opts.rowStyler.call(target, rowIndex, rows[rowIndex]) : '';
var classValue = '';
var styleValue = '';
if (typeof css == 'string'){
styleValue = css;
} else if (css){
classValue = css['class'] || '';
styleValue = css['style'] || '';
}
var classValue = 'datagrid-row ' + (rowIndex % 2 && opts.striped ? 'datagrid-row-alt ' : ' ') + classValue;

function _update(frozen){
var fields = $(target).datagrid('getColumnFields', frozen);
var tr = opts.finder.getTr(target, rowIndex, 'body', (frozen?1:2));
var checked = tr.find('div.datagrid-cell-check input[type=checkbox]').is(':checked');
tr.html(this.renderRow.call(this, target, fields, frozen, rowIndex, rows[rowIndex]));
tr.attr('style', styleValue).attr('class', tr.hasClass('datagrid-row-selected')?classValue+' datagrid-row-selected':classValue);
if (checked){
tr.find('div.datagrid-cell-check input[type=checkbox]')._propAttr('checked', true);
}
}

_update.call(this, true);
_update.call(this, false);
$(target).datagrid('fixRowHeight', rowIndex);
}
});
</script>


Title: Re: is 'getSelected' method for propertyGrid not available in 1.3.4?
Post by: what_tahw on November 10, 2013, 06:45:39 AM
it is working. thanks