Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery UI自动完成-\u第一次粘贴时未触发renderItem_Javascript_Jquery_Jquery Ui_Autocomplete - Fatal编程技术网

Javascript jQuery UI自动完成-\u第一次粘贴时未触发renderItem

Javascript jQuery UI自动完成-\u第一次粘贴时未触发renderItem,javascript,jquery,jquery-ui,autocomplete,Javascript,Jquery,Jquery Ui,Autocomplete,我正在尝试获取一个自定义渲染的自动完成标签,以便在粘贴输入时填充。这是一把小提琴: 要进行测试,请将jQuery复制到剪贴板,然后将其粘贴到输入文本框中。什么也没发生。删除该条目并再次粘贴,搜索将启动。为什么.autocompleteinstance.\u renderItem在第一次粘贴时不启动 var projects = [{ value: "jquery", label: "jQuery", desc: "the write less, do more, JavaScript

我正在尝试获取一个自定义渲染的自动完成标签,以便在粘贴输入时填充。这是一把小提琴:

要进行测试,请将jQuery复制到剪贴板,然后将其粘贴到输入文本框中。什么也没发生。删除该条目并再次粘贴,搜索将启动。为什么.autocompleteinstance.\u renderItem在第一次粘贴时不启动

var projects = [{
  value: "jquery",
  label: "jQuery",
  desc: "the write less, do more, JavaScript library",
  icon: "jquery_32x32.png"
}, {
  value: "jquery-ui",
  label: "jQuery UI",
  desc: "the official user interface library for jQuery",
  icon: "jqueryui_32x32.png"
}, {
  value: "sizzlejs",
  label: "Sizzle JS",
  desc: "a pure-JavaScript CSS selector engine",
  icon: "sizzlejs_32x32.png"
}];

$(input).autocomplete({
  delay: 200,
  minLength: 3,
  source: projects,
}).autocomplete("instance")._renderItem = function(ul, resultItem) {
  console.log("A paste event has happened")
  return $("<li>")
    .append("<div class='autocomplete-item'><div class='autocomplete-img-container'></div><div> " + resultItem.label + "</div></div>")
      .appendTo(ul);
  };
}
</script>
<textarea id="textarea" class="small-input" placeholder="Add a item"  onkeyup="showResult(this)"></textarea>
但是"伦德雷特"号仍然没有开火

添加:

  if(dynamicSource){
        response( dynamicSource);
    } 
    else{
        response({});
    }
解决了它。

var项目=[{ 值:jquery, 标签:jQuery, 描述:写得少,做得多,JavaScript库, 图标:jquery_32x32.png }, { 值:jqueryui, 标签:jqueryui, desc:jQuery的官方用户界面库, 图标:jqueryui_32x32.png }, { 价值:sizzlejs, 标签:Sizzle JS, desc:一个纯JavaScript CSS选择器引擎, 图标:sizzlejs_32x32.png }] $'textarea'。自动完成{ 最小长度:3, 资料来源:项目, }.autocompleteinstance.\u renderItem=functionul,resultItem{ console.logA粘贴事件已发生 返回$ .append+resultItem.label+ .appendToul; };
最终重构到此方法。我对动态自动完成源代码有问题。更新问题。
  if(dynamicSource){
        response( dynamicSource);
    } 
    else{
        response({});
    }