如何在没有点击事件的情况下通过ajax将一些数据发送到控制器。我的意思是当用户登陆HOME页面时,我想获得他当前的纬度和经度,我能够得到他/她当前的坐标。但我的问题是我无法将这个纬度和经度发送到特定的路线,所以我可以根据他当前的坐标搜索最近的酒店。
我的代码:
<script>
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
console.log(position);
var lat = position.coords.latitude;//this gives latitude
var lng = position.coords.longitude;//this gives longitude
$.ajax({
url:'http://localhost:8000/coordinates',
type:'get',
data:{latitude:lat,longitude:lng},
success:function(data)
{
alert('success');
}
});
});
}
</script>
我的路线
Route::get('/coordinates', 'SearchController@getCoordinate');
控制器:
public function getCoordinate(Request $request){
return $request->latitude;// i am getting nothing here. i expect to get
latitude of user
}
当用户访问网站时,如何在我的控制器的getCoordinate
功能中获得此坐标。
答案 0 :(得分:0)
&#34;没有点击事件&#34;
试试这个
$(document).ready(function(){
//paste your script here
})
这意味着当文档准备就绪时,javascript将运行您的代码
答案 1 :(得分:-1)
将您的路线更改为 Route :: get(&#39; / coordinates&#39;,[&#39;使用&#39; =&gt;&#39; SearchController @ getCoordinate&#39;]);