树枝模板内的变量jquery

我试图在twig模板中使用 jquery变量来通过ajax发送,但我无法访问树枝内的jquery变量:

我的代码是:

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

错误显示变量值不存在(在“url:…”行中)

谢谢!

解决方法

问题是Twig是在JavaScript之前启动的,并且Twig无法识别变量“id_emergencia”.你可以做一个技巧.您可以将字符串作为参数放置,然后在JavaScript代码中将字符串替换为变量的值.这样,在启动AJAX请求之前,您将始终拥有正确的URL.

你可以这样做:

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

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...