2014-09-11 86 views
0

我必须添加选项到我的下拉列表中使用jquery的multiselect-filter下拉列表调用ajax。如何添加选项到jquery多选择过滤器下拉使用jquery

这是我jsfiddle

我没有表现出任何下拉列表数据,直到用户类型的东西过滤器。用户在过滤器中键入任何内容时,将会进行一次ajax调用,并将填充下拉菜单。我很喜欢ajax调用,但如何将新选项添加​​到下拉菜单中。

我尝试了下面的所有选项,将选项添加到我的下拉列表中。

1)从这里我得到了想法source。这是一个无限循环。

var el = $("#id").multiselect(); 

$("#id").multiselect().multiselectfilter({ 
    filter: function(event, matches){   

     var v = "val", opt = $('<option />', { 
      value: v, 
      text: v 
     }); 
     opt.appendTo(el);  
     el.multiselect('refresh'); 
    } 
}); 

2)从这里我得到了主意source

var myOptions = { 
    val1 : 'text1', 
    val2 : 'text2' 
}; 
var mySelect = $('#mySelect'); 
$.each(myOptions, function(val, text) { 
    mySelect.append(
     $('<option></option>').val(val).html(text) 
    ); 
}); 

多与少在这里和那里的小变化。请建议。

编辑

或者是有没有办法隐藏下拉列表的所有选项,并告诉他们,只有当过滤器与其中任何一个相匹配!

回答

0

您可以使用此:

$('<option />', { 
      value: "test", 
      text: "test" 
     }).appendTo("#test"); 
$("#test").multiselect('refresh'); 

fiddle

您可以在Ajax调用移动它的成功和你得到的结果有填充它。

+0

谢谢@Alek ..让我试试。 – Jaikrat 2014-09-11 11:43:53

+0

其实..我不得不在页面的onLoad过滤时添加条目。 – Jaikrat 2014-09-11 12:05:31

+0

不知道为什么你想要做这样的事情。你可以简单地填充你的多选对Ajax调用的成功。过滤时无法找到追加的理由。 – 2014-09-11 13:01:16

相关问题