在 blade 语法上传递 javascript var
Pass javascript var on blade syntax
我在使用 laravel 将 vars 传递到 blade 语法时遇到问题,这是 js 代码
var e = document.getElementById("select-city");
var idCity = e.options[e.selectedIndex].value;
var map = L.map('map').setView([{{ $region->cities->find(idCity)->lat }}, 10.2941], 15);
所以我想传递 idCity js var 作为 find() 方法的参数。
我将使用 ajax 来解释这样做。
函数和变量名只是示例。你可以自己修改。
在routes.php文件中
Route::post('/regionCitiesFind', "yourController@finderOrSomething");
在你的控制器中
public static function finderOrSomething( Request $request){
$result $region->cities->find( $request->idCity )->lat; // as your code
return $result;
}
在您看来 (blade) - ajax
var e = document.getElementById("select-city");
var idCity = e.options[e.selectedIndex].value;
$.ajax({
type: "post",
url: "./regionCitiesFind",
headers: { 'X-CSRF-Token': "{{ csrf_token() }}" },
data: "_token={{ csrf_token() }}&idCity="+id,
success: function(msg){
var map = L.map('map').setView([ msg, 10.2941];
}
});
我试着解释在 laravel 中使用 ajax 的主要结构。您的项目可能存在语法错误或遗漏某些内容。
为了扩展@Erkan 的回答,我总是将 blade 代码用双引号括起来并分配给一个 var,如下所示:
var v = "{{ $region->cities->find(idCity)->lat }}";
然后你可以用 v、parseFloat、parseInt 等做任何事情...
我在使用 laravel 将 vars 传递到 blade 语法时遇到问题,这是 js 代码
var e = document.getElementById("select-city");
var idCity = e.options[e.selectedIndex].value;
var map = L.map('map').setView([{{ $region->cities->find(idCity)->lat }}, 10.2941], 15);
所以我想传递 idCity js var 作为 find() 方法的参数。
我将使用 ajax 来解释这样做。 函数和变量名只是示例。你可以自己修改。
在routes.php文件中
Route::post('/regionCitiesFind', "yourController@finderOrSomething");
在你的控制器中
public static function finderOrSomething( Request $request){
$result $region->cities->find( $request->idCity )->lat; // as your code
return $result;
}
在您看来 (blade) - ajax
var e = document.getElementById("select-city");
var idCity = e.options[e.selectedIndex].value;
$.ajax({
type: "post",
url: "./regionCitiesFind",
headers: { 'X-CSRF-Token': "{{ csrf_token() }}" },
data: "_token={{ csrf_token() }}&idCity="+id,
success: function(msg){
var map = L.map('map').setView([ msg, 10.2941];
}
});
我试着解释在 laravel 中使用 ajax 的主要结构。您的项目可能存在语法错误或遗漏某些内容。
为了扩展@Erkan 的回答,我总是将 blade 代码用双引号括起来并分配给一个 var,如下所示:
var v = "{{ $region->cities->find(idCity)->lat }}";
然后你可以用 v、parseFloat、parseInt 等做任何事情...