我正在尝试使用JS附加到现有的Laravel路由,而不必构建URL对象。
我的路线在下面的HTML元素中。
<div class="clickable-element js-location-id" data-href="{{ route('report.file.list')}}">DATA</div>
这是我的JS函数,用于构建新的URL。当前,新的URL是经过硬编码的,但是我更愿意从html元素中获取现有路由,然后将ID附加到其上,因此,如果我更新了路由,则不需要更新JS。>
buildTileFilter(){
//Can I grab the route from the html element without having to create a url?
let url = new URL('http://sample_site/report/file/list?f%5B%5D');
let query_string = url.search;
let search_params = new URLSearchParams(query_string);
search_params.set('f[]', this.locationId);
url.search = search_params.toString();
let new_url = url.toString();
return new_url;
}
答案 0 :(得分:0)
因此,您试图将data属性的值添加到JS函数中?
您可以仅使用普通JS从元素中检索值。
因此,如果您在元素上具有ID,则可以只使用document.getElementByID('the-ID-of-the-element')。dataset('href');
答案 1 :(得分:0)
如果JS在刀片模板文件中,则也可以绕开创建元素的需要,以保持该值。您只需使用刀片插值即可直接在代码中注入路线,如下所示:
n = len(a)
for i in range(n):
imageio.imwrite(f'image_{i:03}.tiff', a[i])