【问题标题】:In jquery UI autocomplete feature add a buttons at the end of each item in the list在 jquery UI 自动完成功能中,在列表中每个项目的末尾添加一个按钮
【发布时间】:2021-08-16 23:13:51
【问题描述】:

我已经使用 jQuery Ui 自动完成创建了列表,现在想在列表中每个项目的末尾显示 3 个按钮,我已经尝试了单个按钮的以下代码,但它对我不起作用,请指导我。

我使用 _renderItem 来渲染列表中每个项目末尾的按钮。

...).data("ui-autocomplete")._renderItem = function(ul,item){
var addTobag = $('<input/>').attr({type:'button', name:'bag',class:'btn btn-primary' , value:'Add to bag',style:'float : right'});
return $('<li></li>').append('<span>' + item.label + addTobag'</span>' )
};

它显示我的错误为 undefined[object object]

【问题讨论】:

  • 欢迎来到 Stack Overflow。您似乎正在将对象添加到字符串中。也不清楚为什么要向自动完成添加按钮。
  • 我怀疑你想要可能要考虑以下 Demo:jqueryui.com/autocomplete/#multiple

标签: javascript jquery jquery-ui jquery-plugins jquery-ui-autocomplete


【解决方案1】:

这是一个将 Button 元素添加到自动完成列表的示例。

$(function() {
  var availableTags = [
    "ActionScript",
    "AppleScript",
    "Asp",
    "BASIC",
    "C",
    "C++",
    "Clojure",
    "COBOL",
    "ColdFusion",
    "Erlang",
    "Fortran",
    "Groovy",
    "Haskell",
    "Java",
    "JavaScript",
    "Lisp",
    "Perl",
    "PHP",
    "Python",
    "Ruby",
    "Scala",
    "Scheme"
  ];
  $("#tags").autocomplete({
    source: availableTags
  }).autocomplete("instance")._renderItem = function(ul, item) {
    return $("<li>")
      .append("<div>" + item.label + "<input type='button' name='bag' class='btn btn-primary' value='Add to bag' style='float: right;' /></div>")
      .appendTo(ul);
  };
});
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<div class="ui-widget">
  <label for="tags">Tags: </label>
  <input id="tags">
</div>

由于用户必须选择该项目,它有点击败按钮点击。

我建议您查看https://jqueryui.com/autocomplete/#multiple 使用此示例,他们可以选择要添加的项目列表作为稍后提交的值。

【讨论】:

  • 感谢您的帮助,但是这个功能的问题是我不能只点击包按钮,每当我点击一个按钮时,与产品(即标签)关联的 url 值就会被点击
  • @user15950409 这是预期的行为。用户应单击一个项目以从列表中选择它。 IT 并非旨在让用户单击列表中的按钮。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多