

テキストフィールド内に数値を入力させて、それを元に ajax で GET したいです。

[code]

    <%= javascript_tag do %>
    jQuery(function($) {
      $('input[id^="multi_entry_user_id"]').focusout(function(e) {
        $.ajax({
          type: "GET",
          url: "<%= j user_json_multi_entries_url(User.first, format: :json) %>",
          data: e.target.value,
          dataType: "script",
          callback: null,
          success: function (data, status, xhr) {
            console.log('hoge success:' + status);
          },
          error: function (data, status, xhr) {
            console.log('hoge error:' + status);
          }
        });
      });
    });
    <% end %>
    
[/code]

`User.first` の部分をユーザの入力値にする方法をご教示願います。


CC BY-SA 3.0
2017-01-21T02:51:34.920
32038
2017-06-03T12:40:53.663
7208
question
ruby-on-rails jquery
javascript_tag の中で url_for に入力された値をセットしたい


とりあえず自己解決したので報告です。

まずは以下のような HTML を生成し、、、、

[code]

    <div class="col-sm-2" data-user-url="http://locahost:3000/multi_entries/user_json/999999.json">
    
[/code]

以下の javascript で URL 文字列を加工するようにしました。

[code]

    var t = $(this).closest("[data-user-url]").data('user-url');
    var url = t.replace("999999.json", e.target.value + ".json");
    
[/code]

"999999" の文字列を置換しているところがイケてないですね...(>_<)


CC BY-SA 3.0
2017-01-30T04:47:03.410
32245
2017-01-30T04:47:03.410
7208
32038
answer