我正在尝试通过java脚本函数在路由中发送两个变量。 JavaScript函数:
function bookmark()
{
var url = '{{ route("save_bookmark",":b_id",":p_no") }}';
url = url.replace(':b_id', book);
url = url.replace(':p_no', count);
document.location.href = url;
}
book和count变量已在脚本中定义。
当我仅通过此代码传递一个变量时,它可以正常工作,但是当我尝试传递另一个变量时,则给我错误。
缺少[Route:save_bookmark] [URI:save_bookmark / {b_id} / {p_no}]所需的参数。
我的路线:
Route::get("save_bookmark/{b_id}/{p_no}",'BookmarkController@create')->name('save_bookmark');
有人知道发生了什么事吗?
答案 0 :(得分:1)
您仍然可以这样做!
javascript
function bookmark()
{
var url = '{{ route("save_bookmark",":b_id",":p_no") }}';
url1 = url.replace(':b_id', book);
url2 = url.replace(':p_no', count);
//document.location.href = url;
document.href="https://example.com/save_bookmark/"+url1 +"/"+url2;
or
location.href="https://example.com/save_bookmark/"+url1 +"/"+url2;
}
答案 1 :(得分:0)
看起来不错: 试试看 =>
let val1= "1122";
let val2= "a1b2c3";
var processUrl = '{{ url("/path/:param1/:param2") }}';
processUrl = processUrl.replace(':param1', val1);
processUrl = processUrl.replace(':param2', val2);
document.location.href = processUrl;