リンクがクリックされたときにいくつかの機能を提供するプレーンHTMLがあります。これをクリーンアップして、Ruby/Railsコーディングスタイルに準拠した方法で処理されるようにします。私はヘルパーをいじってみlink_to
ましたが、この状況を処理するためのクリーンな方法を見つけることができませんでした。
<p>...or <a id="set_current_location" href="#">Use Current Location</a></p>
<script>
$(function(){
$('#set_current_location').on('click', function(e){
e.preventDefault();
navigator.geolocation.getCurrentPosition(function(position) {
$.ajax({
type: 'POST',
url: '<%= set_location_path %>',
data: {
latitude: position.coords.latitude,
longitude: position.coords.longitude
},
async: false
});
})
});
});
</script>
更新:私は実際にjavascriptをcoffeescriptファイルに移動したので、それは実際には私の質問ではありません。これがこの問題に取り組むためのレールのような方法のように見えるかどうか、私は本当に疑問に思っています。