jquery - 选择 jQuery UI 生成的输入元素焦点上的文本

标签 jquery jquery-ui autocomplete

我正在使用 jQuery UI AutoComplete Combobox 选项,如图所示 here 。当您开始输入时,这将立即开始过滤显示的结果,但如果已经选择了一个元素,则输入(无需手动删除内容)将仅附加到字符串上,通常不会找到任何内容。

我希望每当输入字段获得焦点时默认选择文本,但我无法弄清楚将该逻辑添加到脚本中的位置。

这是一个jsFiddle就这个例子。

通常,要在输入元素获得焦点时选择输入元素中的文本,您可以执行以下命令,例如 this所以问题:

//Select all text in Cost Rate Text Boxes when they have focus
$(document).ready(function () {
    $(".CostRateTextBox").live('mouseup', function () {
        $(this).select();
    });
});

脚本中的_createAutocomplete函数是创建输入框的地方。是否可以在以下行附近执行此操作?

this.input = $("<input>")

最佳答案

创建输入时添加事件处理程序,如下所示(并且不要使用 live() ):

this.input = $("<input>")

          .appendTo(this.wrapper)
          .val(value)
          .attr("title", "")
          .addClass("custom-combobox-input ui-widget ui-widget-content ui-state-default ui-corner-left")
          .autocomplete({
              delay: 0,
              minLength: 0,
              source: $.proxy(this, "_source")
          })
          .tooltip({
              tooltipClass: "ui-state-highlight"
          }).on('mouseup', function() {
              $(this).select();
          });

FIDDLE

是的,您必须使用mouseup才能使选择工作。

关于jquery - 选择 jQuery UI 生成的输入元素焦点上的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16617095/

相关文章:

javascript - 从菜单中下拉空选择

jquery - jPlayer 2.0 iPhone/手机问题

autocomplete - 在 mac 上创建 Sublime Text 3 .sublime-completions 自动完成文件

php - 从多个表中自动完成搜索

JQuery 动画文本颜色

java - 如何使用 Lucene 的新 AnalyzingInfixSuggester API 实现自动建议?

javascript - 隐藏/显示加载功能不起作用

jquery - 我如何在 jquery 中使用命名空间字符串?

javascript - 获取 Gridview 选中项目的列表

javascript - jquery中的灯箱居中