LoginSignup
0
0

More than 5 years have passed since last update.

jQuery MobileでTwitter認証につまづいたがAjaxを切って解決した話

Last updated at Posted at 2016-03-04

きっかけ

 RoRでjQueryMobileを使ったモバイルサイトを作っていたが、(参考ページ:http://ruby-rails.hatenadiary.com/entry/20140805/1407200400 )Twitter認証をするときに認証時のページを読み込ませようとすると、エラーとなって読み込まれない。
試しにjQueryMobileを利用しないでみると、ちゃんと読み込まれる。なぜだ!?

検索

 『jQueryMobile Twitter認証』あたりのキーワードでググっても解決方法が出てこない。
 そういえばjQueryMobileを使うとリンクが特殊な動作をするような気が、という記憶の片隅に引っかかっていた情報で試しに検索してみる。『jQueryMobile リンク』でググるとビンゴ!
http://www.buildinsider.net/web/jquerymobileref/05
が引っかかった。
 詳しくはリンク先を読んでもらうのが一番だが、同一ドメインに対してリンクするときは自動的にAjax式のリンクになるとのこと。それがどうやら原因らしい。

Ajaxを切るには

 上記ページにAjaxを切るための4つの方法が紹介されていたが、今回は同一ドメイン同一アプリ内のページ遷移のため、4番目の方法を採用。aタグにdata-ajax="false"を設定する。
 link_toを使ってこれを設定するには、

hoge.html.erb
<%= link_to "認証", "/auth/twitter", data: {ajax: "false"} %>

でOK。

できた!

 これで無事にjQueryMobileを使ったままTwitter認証ができるようになりました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0