Ajax

参考:

Rails で JavaScript を使用する | Rails ガイド [公式]

Rails での javaScript について | Rails日本語ドキュメント (Ruby STUDIO)

respond_to | Rails ドキュメント (railsdoc.com)

render | Rails ドキュメント (railsdoc.com)

respond_to – ActionController::MimeResponds | Ruby on Rails API [Official]

render – AbstractController::Rendering | Ruby on Rails API [Official]

Server-generated JavaScript Responses | Signal v. Noise

使い方

参考:

Ruby on Rails の Ajax 処理のおさらい – Qiita

フル Ajax で動く Rails アプリを作ってみたよ。| Ginpen.com

Rails で remote: true と js.erb を使って簡単に Ajax (非同期通信) を実装しよう!- Qiita

Ajax を使ってパーシャルビューを render する

ArticlesControllerpost アクションに対して、articles/_ajax_response.html.erb パーシャルをviews/articles/post.js.erb  からレンダリングして返す。現在のページの id="target" 要素を書き換える。

// views/articles/post.js.erb
(function () {

  $('#target').html('<%= j render("articles/ajax_response") %>')

})()

@user のアトリビュート name の値を、id="user_name" 要素のテキストとして出力する。

// views/users/update_name.js.erb
(function () {

  const user = JSON.parse('<%= raw @user.to_json %>')

  $('#user_name').text(user['name'])

})()

参考:

JS 形式のレスポンスと remote: true を使う – Qiita

Ajax 処理で .js.erb を使う書き方/使わない書き方 | わからん

Rails の ajax 処理で部分テンプレートのみ更新する方法が便利 | EC-CUBE な日々

new アクションを Ajax で実行する

参考:

Rails で Ajax 基本形 (Scaffold で学ぶ) – Qiita

remote: true

参考:

Demystifying :remote => true | Adam King

rails-ujs

参考:

jquery-ujs から rails-ujs への移行で気をつけること | おもしろ web サービス開発日記チラシの裏

How to make AJAX calls in Rails 5.1 with or without jQuery | Learnetto

rails/actionview/app/assets/javascripts at master · rails/rails – GitHub

XMLHttpRequest

const xhr = new XMLHttpRequest

参考:

XMLHttpRequest | MDN

Ajax 通信で .js.erb ファイルの呼び出しに失敗する

参考:

Rails で ajax を使おうとして format.js 指定しているのに、なぜか html が返ってしまう状態になった時・・ – Qiita

:remote => true の Ajax が動かない | Mercy のメモメモ

Rails3 の :remote => true でファイルを Ajax 送信する | なにげにブログしてます

form_for で remote: true にしているのに、HTML でリクエストされてしまう。| teratail

remote: true で挙動がかわらない | teratail

Rails remote => true confusion (no format.js?) – Stack Overflow

remote: true でフォーマットを指定する

<%= link_to "Get JSON via Ajax", ajax_path, remote: true, format: :json %>

参考:

rails の scaffold で remote form で送信後 json を取得する | joppot

How do I specify the content type? – Stack Overflow

remote: true で HTML にリダイレクトする

window.location を変更する JavaScript コードを返す。

Turbolinks 使用時は、Turbolinks.visit を使う。

参考:

Rails Redirect Not Going as HTML – Stack Overflow

RJS

参考:

Ruby on Rails で RJS を使って Ajax を利用する3つの方法 | sasata299’s blog

RJS を使ってみる | Rubyist Magazin (るびま)

RJS なら数行の Ruby コードで Ajax アプリを作成できる | @IT

What is “RJS”? – Stack Overflow

prototype-rails

*** OBSOLETE ***

Rails >= 3.1 < 4.0

参考:

rails/prototype-rails: Add RJS, Prototype, and Scriptaculous helpers to Rails 3.1+ apps – GitHub

タグ:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です