EasyUI Forum
May 21, 2024, 04:06:14 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: Extend EasyUI component  (Read 8233 times)
chkaufmann
Newbie
*
Posts: 15


View Profile Email
« on: February 19, 2014, 01:17:46 AM »

What is the save way to add own functions to components.

For example I would like to group the following lines in one call

var n = tt.treegrid('getSelected');
var d = tt.treegrid('getData');
tt.treegrid('loadData', d);
if ( n ) tt.treegrid('select', n.id);

This should become something like this

tt.treegrid('myRefresh');
or
tt.treegrid.myRefresh();

cu Christian
Logged
stworthy
Administrator
Hero Member
*****
Posts: 3581


View Profile Email
« Reply #1 on: February 19, 2014, 01:27:32 AM »

Try this:
Code:
<script>
$.extend($.fn.treegrid.methods, {
myRefresh: function(jq){
return jq.each(function(){
var t = $(this);
var opts = t.treegrid('options');
var n = t.treegrid('getSelected');
var d = t.treegrid('getData');
t.treegrid('loadData', d);
if (n){
t.treegrid('select', n[opts.idField]);
}
})
}
});
</script>

Now you can call 'myRefresh' method.
Code:
$('#tg').treegrid('myRefresh');
Logged
chkaufmann
Newbie
*
Posts: 15


View Profile Email
« Reply #2 on: February 19, 2014, 02:04:32 AM »

Great!

One additional question: I defined an onSelect function but would like to disable it during the call to 'select' here.

Is this possible?

cu Christian
Logged
stworthy
Administrator
Hero Member
*****
Posts: 3581


View Profile Email
« Reply #3 on: February 19, 2014, 06:47:37 AM »

Please use the updated code:
Code:
<script>
$.extend($.fn.treegrid.methods, {
myRefresh: function(jq){
return jq.each(function(){
var t = $(this);
var opts = t.treegrid('options');
var n = t.treegrid('getSelected');
var d = t.treegrid('getData');
t.treegrid('loadData', d);
if (n){
var onSelect = opts.onSelect;
opts.onSelect = function(){};
t.treegrid('select', n[opts.idField]);
opts.onSelect = onSelect;
}
})
}
});
</script>
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!