ユーザが選択した複数選択入力のテキストフィールドに入力したテキストをオプションとして追加し、自動的に選択します。オプションが存在する場合、それを選択したいと思います。これまでのところ、私はこれを行うために管理している:入力フィールドがkeydown_check
関数内でフォーカスされている間、ユーザーがEnterキーを押すたび選択した複数のJQueryプラグインに動的にオプションを追加する
Chosen.prototype.add_text_as_option = function() {
$('#id_select').append(
$('<option>')
.html(this.search_field.val())
.attr('selected', 'selected')
.attr('value', 0)
);
$('#id_select').trigger("liszt:updated");
return false;
};
私はこの関数を呼び出します。
私は2つの問題を抱えて:ユーザーがEnterキーを押すとオプションの部分文字列を入力したとき、
- 最優先し、オプションが選択され得ることはありませんが、サブストリングテキストが追加され、選択されます。私が望むものではありません。 例えば
:私はオプション「foo」を持っている、と私はEnterキーを押すとので、候補として最初 オプション(「foo」を)迎えます選ばれた、「FO」を入力して起動した場合、それを選択する必要があります代わりに、私は実際に "foo"を選択したいときに、オプションとして "fo"が追加されて選択されます。
「foo」をクリックして選択すると、すべて正常に動作します。オプション選択マークが選択され、部分文字列がオプションの一部として使用されます。
元の機能をすべて失うことなく、選択したものに存在しないオプションを追加するにはどうすればよいですか?
どうやって選ばれたプラグインの内側に選ばれたwhith私はinitilized選択、複数のフィールドにアクセスすることができますか?上のコードで分かるように、複数選択フィールドのIDはハードコードされています。ユーザーが新しいオプションを追加したときに、選択を更新できるようにするためにこれを実行したいと思います。
私が探している機能は、事前にlinkedin
感謝のスキルウィジェットと非常によく似ています!
を選択するあなたは、ユーザーが入力したときと言っているように見えます既存のオプションの先頭に一致する値を選択する必要がありますが、複数のオプションに一致する場合はどうなりますかオプション?たとえば、 "fo"は "food"と "football"に一致します - 両方を選択しますか? – nnnnnn
私はちょうど彼が望むものを選択させ、望む場合は新しいオプションを追加させたいと思っています。 – danielrvt
@nnnnnnは+1と言うだけでなく、 "fo"を追加したい場合はどうしますか?私は問題が何よりも概念的だと思う。 (a)既存のオプションに関係なく入力したものを正確に追加する、(b)シングルトンマッチングオプションを追加する、(c)複数のマッチから選択したオプションを追加するメカニズムが必要なようです。 –