本文實(shí)例講述了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>
這個(gè)ajax請(qǐng)求的地址,無法正常正常訪問。
這段代碼里 jQuery("#my_input").val()的值賦值給value,然后想把value這個(gè)變量引入到ajax里的url地址里。
這時(shí)候你會(huì)發(fā)現(xiàn),你訪問的這個(gè)地址,value的值并未引入進(jìn)來,而是把當(dāng)做字符串進(jìn)行處理。
也就是說js的值,是不能直接引用到twig里的。
原因是,twig解析的是php變量,而value是js變量,所以twig 默認(rèn)認(rèn)為是個(gè)字符串。
所以我們需要進(jìn)行替換,就要用到replace
代碼如下,大家可以和上面的代碼自行對(duì)比:
<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博客 ,轉(zhuǎn)載時(shí)請(qǐng)注明出處及相應(yīng)鏈接。