发布于 2016-02-16 21:56:14 | 216 次阅读 | 评论: 0 | 来源: 网友投递
Twig PHP模板语言
Twig是一个灵活,快速,安全的PHP模板语言。它将模板编译成经过优化的原始PHP代码。Twig拥有一个Sandbox模型来检测不可信的模板代码。Twig由一个灵活的词法分析器和语法分析器组成,可以让开发人员定义自己的标签,过滤器并创建自己的DSL。
这篇文章主要介绍了twig里使用js变量的方法,结合实例形式对比分析了在twig中使用js变量的相关调用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了twig里使用js变量的方法的方法。分享给大家供大家参考,具体如下:
先看一段代码
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery(#my_input).change(function(){
var value = jQuery(#my_input).val();
jQuery.ajax({
url: {{ path('ParteAccidentes_ajax', {'emergencia': value}) }},
timeout: 5000,
success: function(data) {
alert('ok');
},
error: function() {
alert('mal');
}
});
});
});
</script>
这个ajax请求的地址,无法正常正常访问。
这段代码里 jQuery("#my_input").val()的值赋值给value,然后想把value这个变量引入到ajax里的url地址里。
这时候你会发现,你访问的这个地址,value的值并未引入进来,而是把当做字符串进行处理。
也就是说js的值,是不能直接引用到twig里的。
原因是,twig解析的是php变量,而value是js变量,所以twig 默认认为是个字符串。
所以我们需要进行替换,就要用到replace
代码如下,大家可以和上面的代码自行对比:
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery(#my_input).change(function(){
var value = jQuery(#my_input).val();
var url = "{{ path('ParteAccidentes_ajax', {'emergencia': 'text'}) }}";
url = url.replace("text", value);
jQuery.ajax({
url: url,
timeout: 5000,
success: function(data) {
alert('ok');
},
error: function() {
alert('mal');
}
});
});
});
</script>