0

ネストされた属性フォームのエピソードの作成についてのレールキャストが続きます。add missionそのため、フォームでボタンが押されたときにuser_missionオブジェクトを作成するコーヒースクリプトがあります。

jQuery ->
  $('form').on 'click', '.add_fields', (event) ->
    time = new Date().getTime()
    regexp = new RegExp($(this).data('id'), 'g')
    $(this).before($(this).data('fields').replace(regexp, time))
    event.preventDefault()

生成されたhtmlの一部は次のようになります。

  <input id="user_user_missions_attributes_70324621482200_mission_title" name="user[user_missions_attributes][70324621482200][mission_title]" size="30" type="text" />  

すでに作成されているミッションのリストを調べて、ユーザーが入力したミッションがすでに存在するかどうかを確認する機能をオートコンプリートする機能を追加しようとしています。問題は、私がhtmlに少し慣れていないことと、ダイナミックhtmlIDにオートコンプリート呼び出しを追加する方法がわからないことです。

オートコンプリートを追加する必要があるフィールドを見つけるためのクリーンな方法はありますか?検索するにはトークン化する必要がありuser_user_missions_attributes_70324621482200_mission_titleますか?

ありがとう

4

1 に答える 1

0

name属性の部分一致で検索してみてください。それほど速くはありませんが、各ページに数個しかない場合は、ページの読み込みパフォーマンスの低下に気付くことはありません。

$("input[name*='[mission_title]']")

IDを部分的に一致させることもできますが、クリーンではないようです。

$("input[id*='_mission_title']")

これらのフィールドにクラスを追加して、それを使用することもできます。

于 2012-09-30T23:57:12.430 に答える