范围"这个" jquery插件中的元素

时间:2012-03-25 22:15:09

标签: jquery jquery-plugins

我正在尝试编写一个jQuery插件来自动填充选择框,但我对在“each”函数中使用this关键字感到磕磕绊绊。代码如下:

(function($) { 
    $.fn.addOptionsTable2 = function() {        
    options = {
            values : text [...]
        };
        $.each(options, function(val,text) {
            this.append(
              $('<option></option>').val(val).html(text)
        );
    });
  }
})(jQuery); 

这似乎不起作用,我认为问题是“这个”参考。 我怎样才能完成这项工作,以及我的代码中“this”指的是什么?

1 个答案:

答案 0 :(得分:3)

$.eachthis设置为当前对象(用于循环)。

试试这个:

    var that = this;

    $.each(options, function(val,text) {
        that.append(
          $('<option></option>').val(val).html(text)
    );