<script type="text/template">是干什么的,为什么要把html写在js中? 这是什么编程语言风格,都能这样用吗?
这段代码是我在别人的网站上看到的,很奇怪,谁能解释一下,为什么要这么写,这样写有什么好处。
<script id="login_box_tpl" type="text/template">
http://xxxx/css/$1.0.67/login.css" rel="stylesheet"/>
<!--[if lte IE 6]>
http://xxxx.org/css/$1.0.67/ie6.css" rel="stylesheet"/>
<![endif]-->
<form class="auth_mk" action="/user/doLogin.action" method="post">
<input type="hidden" name="redirectUrl" value="/"/>
<ul>
<li><label for="nick">邮箱</label><input id="nick" type="text" name="email" value=""/>
</li>
<li><label for="password">密码</label><input id="password" type="password" name="password"/></li>
<li class="def"><label><input name="autoLogin" type="checkbox" value="1" checked="checked"/> 下次自动登录</label>
</li>
<li>
<button type="submit">登录</button>…
显示全部这一段存放了一个模板。
在js里面,经常需要使用js往页面中插入html内容。比如这样:
var number = 123;$('#d').append('<div class="t">'+number+'</div>')
如果html很短还好说,但是遇到描述里面的这么大段,直接用字符串存储会很困难,因为不光要处理单引号,还需要很多「+」号把字符串一个个连接起来,十分的不方便。
给<script>设置type="text/template",标签里面的内容不会被执行,也不会显示在页面上,但是可以在另一个script里面通过获取,然后再通过相关的模板工具进行处理,插入到页面中。这样就把大段的HTML操作从js里面分离开了。
知乎用户,javascript,css,html,php
前端模板, 比连接字符串好用多了, 还可以使用循环\判断等语句, 减少工作量
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。