前提・実現したいこと
Geolocation APIで現在地から緯度経度を取得して、railsのコントローラー内で処理を行いたいです。
Javascriptの変数をajaxを用いてコントローラーに渡そうとしていますが、上手くいきません。
発生している問題・エラーメッセージ
binding.pryで確認するとlatitude, longitudeが0.0となってしまいます。アラートで表示させてみたところちゃんと緯度経度が出たので、現在地の取得はできていると思います。ajaxでの受け渡しに問題があるのは分かるのですが調べても間違いが分からず、どなたか教えて頂けると嬉しいです。rails6.1.3です。
エラーメッセージは特にありません。
該当のソースコード
html
1<script type="text/javascript"> 2 if (navigator.geolocation) { 3 navigator.geolocation.getCurrentPosition( 4 5 function(position){ 6 $.ajax({ 7 url: "/maps/new", 8 type: "GET", 9 dataType: 'html', 10 async: true, 11 data: {latitude : position.coords.latitude, 12 longitude : position.coords.longitude, 13 } 14 }); 15 } 16 ) 17 } 18</script>
controller
1def new 2 latitude = params[:latitude].to_f 3 longitude = params[:longitude].to_f 4end
試したこと
いろいろ調べて試してみましたがJavascriptの理解が進んでおらず、解決できませんでした、、、
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/21 19:23
退会済みユーザー
2021/10/23 00:50