1

現時点では、ブートストラップのタイプアヘッドで自動選択していません (以下のコードを参照)。これは正常に機能していますが、以前はユーザーが Enter キーを押したときに autoselect[0] が使用されていましたが、現在はセルをクリアしています。現在のセルの内容を保持するにはどうすればよいですか。

現在のところ、bootstrap-typeahead.js の自動選択と強調表示を無効にするコード:

$.fn.typeahead.Constructor.prototype.render = function (items) {
 var that = this;
 items = $(items).map(function (i, item) {
 i = $(that.options.item).attr('data-value', item);
 i.find('a').html(that.highlighter(item));
 return i[0];
});

this.$menu.html(items);
 return this;
};

http://jsfiddle.net/isherwood/vvK3b/

4

1 に答える 1

2

強調表示されたアイテムにクラスを配置するのをやめactiveましたが、ブートストラップはこれを処理する方法を知りません。あなたがする必要があるのは、関数も変更して、クラスselectがない場合に通常行うことを行わないようにすることです。activeここにコードがあります

$.fn.typeahead.Constructor.prototype.select = function () {
    if (this.$menu.find('.active').length) {
      var val = this.$menu.find('.active').attr('data-value')
      this.$element
        .val(this.updater(val))
        .change()
      return this.hide()
    }
}

http://jsfiddle.net/isherwood/vvK3b/1/

于 2013-05-30T20:04:51.760 に答える