javascript - 下拉列表 : call class method by changing

标签 javascript jquery class onchange dropdownbox

我的问题如下:

  • 我为下拉列表创建一个类,并使用创建下拉列表的方法
  • 当用户选择列表中的其他条目时,我想调用其他方法“select_entry_in_list”

但是这样不行。

我尝试以下方式:Link www.w3schools.com - editor

// track the change event - jquery
$('#xv_select_typ').on('change', function() {
      this.obj_opt.select_entry_in_list();
});​

// called by a Button (onclick)
function create(){
    this.obj_opt = new opt();
    this.obj_opt.create_option_list();
}​

// Option list class
class opt {    

    // create the option list
    create_option_list(){ 

        var list_entrys = [
            [1,"Hallo"],
            [3,"buongiorno"],
            [5,"bonjour"]
        ];

        var list = "<select id='xv_select_typ'>";
        var opt_entry;

        list = list + "<option>-</option>";

        for (var key in list_entrys) {  

          var entry_name = list_entrys[key][1];
          opt_entry = "<option entry_id='"+key+"'>"                 
            + entry_name   
            + "</option>";
          list = list + opt_entry;​
        }
        list = list + "</select>"; 

        $('#sec').html(list);
    }  

    // When an entry of the list will changed
    select_entry_in_list(){
        alert("WORK!");
    }

}

最佳答案

将选择事件处理程序移动到创建函数中,如下所示:

    // called by Button
function create(){
    self.obj_opt = new opt();
    self.obj_opt.create_option_list();
        // track the change event
$('#xv_select_typ').on('change', function() {
      self.obj_opt.select_entry_in_list();
});

}

关于javascript - 下拉列表 : call class method by changing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50720294/

相关文章:

javascript - 通过 Angular 从 UL 中删除 LI

javascript - 无法加载资源,Safari 9 和 jboss wildfly 8.2 的网络连接丢失

jquery - 动画高度变化

javascript - 如何编写接受回调作为参数的 jquery 函数

c++ - 实现利用多个其他非继承类的 C++ 类方法?

java - 使用 'Reflect' 从扩展抽象类获取参数值

javascript - 消息过滤器忽略允许的单词

jquery - jsTree 未使用 "inline"json 数据进行渲染

java - 如何覆盖在另一个已继承的类中赋值的变量

javascript - React-Redux Reducers 中 Spread 语法的用途