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>

本文永久地址:http://blog.it985.com/7020.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。

更多关于PHP模板相关内容感兴趣的读者可查看本站专题:《PHP模板技术总结》、《smarty模板入门基础教程》、《codeigniter入门教程》及《ThinkPHP入门教程》

希望本文所述对大家PHP程序设计有所帮助。

(0)

相关推荐

  • 在Yii框架中使用PHP模板引擎Twig的例子

    Twig是一款快速.安全.灵活的PHP模板引擎,它内置了许多filter和tags,并且支持模板继承,能让你用最简洁的代码来描述你的模板.他的语法和Python下的模板引擎Jinjia以及Django的模板语法都非常像. 比如我们在PHP中需要输出变量并且将其进行转义时,语法比较累赘: 复制代码 代码如下: <?php echo $var ?><?php echo htmlspecialchars(\$var, ENT_QUOTES, 'UTF-8') ?> 但是在Twig中可以这

  • twig模板获取全局变量的方法

    本文实例讲述了twig模板获取全局变量的方法.分享给大家供大家参考,具体如下: 简单介绍下,twig是一模板引擎,可以简化php的编写过程,提高效率. 而Symfony模板里,就自带了twig这一模板引擎. twig的语法用的多的,也就三种,也是比较容易的 1.{{..}},这个在twig里是代表输出变量的意思,举个例子: {{ id }} 2.{%-%},这个在twig里代表的是进行判断,举个例子(取自twig官方文档示例): 判断值是否为真: {% if online == false %}

  • Twig模板引擎用法入门教程

    本文实例讲述了Twig模板引擎用法.分享给大家供大家参考,具体如下: 介绍 Twig是一个灵活.高效并且安全的PHP模板引擎. 如果你使用过Smarty.Django或者Jinja这类基于文本的模板引擎的话,那么你会觉得Twig是很自然而然的事情.Twig严格遵守了PHP的信念,同时增加了在模板环境中很有用的函数,这些做法使得Twig不论是对设计师还是开发人员,都是非常友好的. Twig的主要特征有: 高效:Twig将模板编译成了优化了的PHP文件,与原生的PHP代码比较而言,性能损耗非常小.

  • twig模板常用语句实例小结

    本文实例讲述了twig模板常用语句.分享给大家供大家参考,具体如下: 最近写的静态页面需要套symfony模板,所以将使用到的twig模板语句做一个总结:希望能帮到初学者. 代码结构如下: {% extends '::l_sh_base.html.twig' %} //引入的base模板 {% block title %} //网页标题 商户中心-维修分类 {% endblock %} {% block stylesheets %} //引入的css或js文件 {{ parent() }} <l

  • 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'

  • Django模板变量如何传递给外部js调用的方法小结

    前言 因为工作的需要,最近一直在思考如何更好的组织Django中的静态资源,比如JS.CSS一类,如何结合前端构建工具写出更好的代码以及结构呢?下面这篇文章就给大家详细介绍了实现的方法,话不多说,来一起看看详细的介绍: 方法如下: 首先需要解决的一个问题就是某些时候需要把JS代码写在模板里来获取后台传递过来的变量,比如: <div> <h1>Test</h1> <div id="my-test" ></div> </di

  • vue 获取及修改store.js里的公共变量实例

    html <input type='text' :value='num'> <button @click='add'> + </botton> js data(){ return{ } }, methods:{ add(){ this.$store.commit('add',1) } }, computed:{ num:function(){ // 因为要做修改 num 的值 所以放在 计算属性里 return this.$store.state.num } } sto

  • php变量与JS变量实现不通过跳转直接交互的方法

    本文实例讲述了php变量与JS变量实现不通过跳转直接交互的方法.分享给大家供大家参考,具体如下: 大家都知道如果JS变量要获取后台传来的php变量可以这么写: <?php $aaa = '111';?> var aaa = <?php echo $aaa;?>; 那么我们如何将js变量的值直接付给php变量呢 第一种方法也是最常见的方法: 无刷新:使用ajax传参 有刷新:直接跟表单一起提交或者直接跟在跳转链接的后面. 现在我来说一下第二种传值方式: 示例为对js变量进行日期处理:

  • JS使用eval()动态创建变量的方法

    本文实例讲述了JS使用eval()动态创建变量的方法.分享给大家供大家参考,具体如下: 一.什么是eval()函数? eval_r()函数可计算某个字符串,并执行其中的的 JavaScript 代码. 二.如何动态定义变量? 既然eval()能够计算字符串,何不将定义变量的写法转换为字符串,然后放入eval_r()函数内进行执行,形如: var defineStr = "var number_"+i.toString(); eval_r(defineStr); 这样就定义了一个变量,你

  • JS实现两表格里数据来回转移的方法

    本文实例讲述了JS实现两表格里数据来回转移的方法.分享给大家供大家参考.具体分析如下: 最近做项目里用到了一个 两个表格里数据的来回转移,用JS稍微做了下,界面也没有去弄很漂亮 感觉写得有点繁琐了,有时间再改进哈 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xml

  • JS交换变量的方法

    本文实例讲述了JS交换变量的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <html xmlns="http://www.w3.org/1999/xhtml">  <head>      <title></title>      <script type="text/javascript">          function jh(arr) {              for (

  • js实现类似jquery里animate动画效果的方法

    本文实例讲述了js实现类似jquery里animate动画效果的方法.分享给大家供大家参考.具体分析如下: 该实例可实现鼠标移上,先宽度变化,再高度变化,最后透明度变化,鼠标移出,再依次变回去的效果. 要点一: startrun(obj,attr,target,fn) box.onmouseover = function(){ startrun(box,"width",200,function(){ startrun(box,"height",200,functio

  • flash调用js中的方法,让js传递变量给flash的办法及思路

    html 页中的 JavaScript 函数: 复制代码 代码如下: function GetSwfUrl(){var pics1 = parseInt(Math.random()*5)+1;var pics2 = parseInt(Math.random()*5)+1;document.my_swfId.SetVariable("pic01Num", pics1);document.my_swfId.SetVariable("pic02Num", pics2);}

  • js变量以及其作用域详解

    一.变量的类型 Javascript和Java.C这些语言不同,它是一种无类型.弱检测的语言.它对变量的定义并不需要声明变量类型,我们只要通过赋值的形式,可以将各种类型的数据赋值给同一个变量.例如: 复制代码 代码如下: i=100;//Number类型 i="variable";//String类型 i={x:4};//Object类型 i=[1,2,3];//Array类型 JS的这种特性虽然让我们的编码更加灵活,但也带来了一个弊端,不利于Debug,编译器的弱检测让我们维护冗长的

随机推荐