9

selectize.jsを使用してテキスト ボックスのスタイルを設定していますが、問題なく動作しています。

$("select[name='somename']").selectize({
  valueField: 'id',
  labelField: 'name',
  searchField: 'name',
  options: selectableThings,
  render: {
    option: function(item, escape) {
      return render(someTemplate, item);
    },
    item: function(item, escape) {
      return render(someTemplate, item);
    }
  }
});

ただし、項目の範囲が限られているため、カーソル (| の点滅) を常に有効にしたくありません。API ドキュメントとソースを検索しましたが、明確なものは見つかりません。

点滅するカーソルを無効にするために組み込まれているものはありますか?

編集はもともとこれを「入力の無効化」として持っていますが、カーソルを入力に使用できないようです(入力を無効にしてもカーソルが表示されます)。

4

4 に答える 4

11

Selectize は、select デコレータとして機能するように特別に設計されているわけではありません。カーソルは<input>、ユーザーがオプションを絞り込むことを可能にする要素から来ています。入力を非表示にすると、ユーザーが入力したときに奇妙な動作が発生します。また、コントロールが空の場合、入力はプレースホルダー テキストを表示するために使用されます。

技術的には、CSS を使用してカーソル (および入力) を非表示にすることができます。

/* option a: make transparent */
.selectize-input input {
    color: transparent !important;
}

/* option b: position off-screen */
.selectize-input input {
    position: absolute !important;
    top: -9999px;
    left: -9999px;
}

しかし、これもファンキーな感じになります。キーボード処理を無効にするプラグインの作成を検討しますdecorator_onlyが、当面の優先事項ではありません。

http://jsfiddle.net/mARDE/1/

于 2013-09-27T02:18:20.823 に答える