客户端Handlebars导致404个请求
Client-side Handlebars causes 404 requests
我想在客户端使用把手。在我的html代码中,我有这样的调用:
<img src="data/cloud/products/{{key}}/{{images.product.frontal.trans_bg_img}}" alt="">
直接在我的index.html.中
在javascript中,我做了这样的事情:
this.emptyPageSource = $("#productdetail").html();
this.productTemplate = Handlebars.compile(this.emptyPageSource);
var html = this.productTemplate(product);
$("#productdetail").html(html);
这很好用。我将dom中现有的html片段作为模板,然后使用handlers应用模板并覆盖旧的dom条目。
当我加载页面时,我收到了很多404请求,因为浏览器已经尝试加载图像资源,即使由于JS部分的原因,模板还没有调用。
有没有办法规避404获取请求?(我没有使用angular或类似的东西——只是简单的js+jquery)
提前谢谢Chris
我将尝试将#productdetail
元素转换为<script type='text/template' id='productdetail'>
。如:JSBin
<h1>A Cat</h1>
<script type="text/template" id="productdetail">
<img src="{{image}}" alt="">
</script>
Rest of it
<script>
var product = {
key: '1',
image: 'https://media.giphy.com/media/freTElrZl4zaU/giphy.gif'
}
var emptyPageSource = $("#productdetail").html();
var productTemplate = Handlebars.compile(emptyPageSource);
var html = productTemplate(product);
$("#productdetail").replaceWith(html);
</script>
浏览器不理解text/template
脚本,只是忽略了它。但我们可以将脚本标记中的内容用作模板来读取。
相关文章:
- 从Django中同一页面上的多个按钮启动AJAX请求
- Ajax”;链接_;当点击非常快时发送多个请求控制器请求(Rails4)
- Google Maps JavaScript API v3:getDetails(请求,回调),用于多个位置
- jquery对话框内容仅针对第一个请求进行对齐
- davis.js在页面加载/重新加载上生成两个请求
- 发送具有复杂、多个参数的POST请求
- 在结束请求上设置多个滚动条位置
- AJAX 请求不会在 400 个错误查询上执行失败
- 跨节点服务器上的多个 API 请求维护数据
- 多个 Javascript 文件,但只有一个 HTTP 请求
- Angularjs解析404个视图
- 客户端Handlebars导致404个请求
- 使用异步请求多个网址
- Javascript 一个请求多个 JS 文件
- Node.js并请求2个数据库
- NodeJS请求多个api端点
- AngularJS:IE为templateCache中存储的项抛出404个错误
- MediaWiki中的MathJax:显示转义语法,控制台有404个错误
- 正在使用oneror检测表中的404个链接
- Express.JS + Node-Mysql 和每个 http 请求 1 个连接