0

私は基本レベルのプログラマーで、PHP と jQuery で書いています。

サイトにテキスト ボックスのあるオートコンプリート フィールドを作成しようとしています。ユーザーが入力を開始すると、関連するユーザーと ID 番号の PHP ページから結果が取得されます。

私はこれを tagsinput と組み合わせています - 基本的には Gmail のようにしたいのですが - 誰かの名前を入力すると、タグとして表示されます。データにアクセスできる必要があります (特に ID - 名前を選択した後、それらの ID に基づいてユーザーにメールを送信するコードを作成するため)。

私のサイトでは Bootstrap 3 を使用しているため、さまざまな Typeahead プラグインと混同してしまいました。

私が理解しているように、使用するにはbootstrap3-typeahead.min.jsファイルを使用する必要があります。これは私のページに含まれています。

私が見る限り、ほとんどの作業は完了しています - ajax 呼び出しから正しい結果が返されていますが、必要に応じてオプションが画面に表示されていません - そして "TypeError: g is undefined" が表示されますFirebug のエラー。

ここに私がこれまでのところ行っているところがあります(必要なものは何でも投稿できます):

$('#user_name').tagsinput({
  typeahead: {
    source: function(query) {
      var fetched = $.get('group.php?pa=ajax_get_users&term='+query);
      console.log(fetched);
    }
  }
})

上記のページは、json でエンコードされた名前と ID の配列を返し、機能しているようです。firebug を使用すると、(たとえば) それを確認できます。フィールドに「to」と入力すると、呼び出しが行われ、次のものが返されます。

[{"label":"Toby Behan","id":"2"},{"label":"Toby Behan","id":"3126"},{"label":"Tommy Streisand","id":"3144"}]

console.log() 関数は、Firebug で返された有効なオブジェクトを示しています。

ドロップダウンと選択に関してこれを適切に表示するにはどうすればよいですか?

助けてくれてありがとう。

4

1 に答える 1