【问题标题】:jQuery UI autocomplete's select event not triggered with Tag-itjQuery UI 自动完成的选择事件不是用 Tag-it 触发的
【发布时间】:2014-12-18 19:20:48
【问题描述】:

Fiddle Example

谁能告诉我如何在点击时将建议附加到输入框? 我使用过这样的Select 事件:

$("#tags").tagit({
  autocomplete: {
  source: availableTags, 
  select: function (event, ui) {
  $(this).val(ui.item.value);
  },
  create: function () {       
    $(this).data("ui-autocomplete")._renderItem = function(ul, item) {
     var inner_html = ''+item.value+'';
     return $("<li></li>")
      .data("item.autocomplete", item)
      .append(inner_html)  
      .appendTo(ul);
    };
  }        
 }
})

但是这些建议在菜单中是不可点击的。

【问题讨论】:

    标签: javascript jquery html autocomplete jquery-autocomplete


    【解决方案1】:

    你在你的 ui-autocomplete 类之前忘记了一个点。 第 8 行应为:

    $(this).data(".ui-autocomplete")._renderItem = function(ul, item) {
    


    编辑:我对代码做了一些改动,显然你需要使用:

    .data("ui-autocomplete-item", item)

    阻止点击的是 .append() 行。我将其更改为
    .append("&lt;a&gt;" + item.label + "&lt;/a&gt;" )

    这是一个没有控制台错误的工作小提琴。 http://jsfiddle.net/EZ56N/114/

    顺便说一句,点与它无关,对不起。

    【讨论】:

    • 谢谢。它可以工作,但该点会导致此错误出现在控制台中:Cannot set property '_renderItem' of undefinedFiddle Example
    猜你喜欢
    • 1970-01-01
    • 2011-05-13
    • 2017-02-16
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多