1

私は今週末http://textextjs.com/で遊んでいます。これは、将来役立つ可能性のある追加機能(タグ付けなど)を備えた非常に堅実なオートコンプリートプラグインのようです。現在自分のオートコンプリート機能を使用している1つの場所にこれを実装しようとしましたが、このプラグインには、例/解決策をまだ見つけていない重大な問題が1つあります。

次のデータ構造を使用しています。

[
    {
        "id": "1",
        "title": "Active",
        //etc....
    },
    {
        "id": "2",
        "title": "Inactive",
        //etc....
    },
    //etc...
]

現在、ajax / autocompleteプラグインを使用しています(ただし、最終的にはタグプラグインにこの機能が必要になります)。このデータを正常に機能させるカスタムItemManagerがありますが、ここに問題があります。ユーザーが表示して操作する入力をobject.titleに設定できるようにしたいのですが、フォームで送信される非表示の入力をobject.idにしたいのです。オートコンプリート/タグプラグインを使用するときにこのタイプの機能を取得するにはどうすればよいですか?

それを実装するプラグインを作成する必要があるように思われるので、onGetDataFormを調べてみました(ただし、非表示の入力を設定できるようにするためだけにプラグインを作成するのはやり過ぎのようですが、表示されます)が、その場合でも、オートコンプリートで選択されたアイテムの完全なデータオブジェクトにアクセスして、2つのフィールドを異なる設定にできるようにする方法がわかりません。これに関するどんな助けも素晴らしいでしょう。

4

1 に答える 1

1

TextExt.js は現在それをサポートしていないと思いますが、実装は非常に簡単なはずです。説明する前に、GitHub で問題を報告してください。

この関数を見てください https://github.com/alexgorbatchev/jquery-text/blob/master/src/js/textext.plugin.autocomplete.js#L671

p.onGetFormData = function(e, data, keyCode)
{
    var self       = this,
        val        = self.val(),
        inputValue = val,
        formValue  = val
        ;
    data[100] = self.formDataObject(inputValue, formValue);
};

ご覧のとおり、入力ボックスから直接値を返します。ここでできることはself._suggestions、これまでに入力したユーザーが何かと一致するかどうか、データ配列 ( ) をチェックインすることです。その場合は、一致する項目を使用してidフィールドを返すことができます。

それはあなたの質問に答えていますか?

于 2012-06-06T00:06:09.807 に答える