EasyUI Forum
September 14, 2025, 03:36:15 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: combobox onSelect() not triggering [Solved]  (Read 8165 times)
devnull
Sr. Member
****
Posts: 431


View Profile
« on: December 10, 2014, 03:18:09 AM »

I have a function that indexes the combobox selection forwards and backwards, it does change the values however the combobox's onSelect() event does not appear to be triggering ?

Code:
    $.extend($.fn.combobox.methods, {
      index:function(me,dir){
        function keyidx(arr,key,val){return arr.map(function(e){return e[key];}).indexOf(val)}
        var d = {};
        d.val = me.combobox('getValue');
        d.data = me.combobox('getData');
        d.idx = keyidx(d.data,'value',d.val);
        if(dir==1 && d.idx < d.data.length -1) d.idx++; else if(d.idx > 0) d.idx --;
        d.nval = d.data[d.idx++].value
        me.combobox('unselect');
        me.combobox('setValue',d.nval);
        me.combobox('select',d.nval);
        d = null;
      }
    })

What am I doing wrong ?
« Last Edit: December 12, 2014, 02:12:11 AM by devnull » Logged

-- Licensed User --
jarry
Administrator
Hero Member
*****
Posts: 2298


View Profile Email
« Reply #1 on: December 10, 2014, 08:20:51 AM »

Please try the code below instead.
Code:
$.extend($.fn.combobox.methods, {
  index:function(me,dir){
    function keyidx(arr,key,val){return arr.map(function(e){return String(e[key]);}).indexOf(String(val))}
    var opts = me.combobox('options');
    var d = {};
    d.val = me.combobox('getValue');
    d.data = me.combobox('getData');
    d.idx = keyidx(d.data,opts.valueField,d.val);
    console.log(d.idx)
    if(dir==1 && d.idx < d.data.length -1) d.idx++; else if(d.idx > 0) d.idx --;
    d.nval = d.data[d.idx++][opts.valueField]
    me.combobox('unselect');
    // me.combobox('setValue',d.nval);
    me.combobox('select',d.nval);
    d = null;
  }
})
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!