首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >只有当事件发生时,我如何才能在我的模板中嵌入控制器?

只有当事件发生时,我如何才能在我的模板中嵌入控制器?
EN

Stack Overflow用户
提问于 2012-10-10 20:30:26
回答 1查看 145关注 0票数 0

我在模板中定义了一个按钮,如下所示:

代码语言:javascript
运行
AI代码解释
复制
<input type="button" value="Button"
       onclick="callController('someValue')"/>

和前面定义的javascript块:

代码语言:javascript
运行
AI代码解释
复制
<script type="text/javascipt">
    function callController(value)
    {
        //Code to call the controller here, passing value
    }
</script>

我试着用

代码语言:javascript
运行
AI代码解释
复制
{% render "Stuff:Stuff:action" with {'value' = value } %}

,但是当我单击按钮时,将在进入页面时计算该行的值,而不是关闭它,并且它报警值未定义(因为它仅在单击按钮后定义)。我还试着用

代码语言:javascript
运行
AI代码解释
复制
window.location.href = "{{ path('routeToPage', {'value' = value}) }}"

但它也是在变量定义之前计算的,所以我得到了一个错误。

我可以让这条细枝线在我点击按钮后执行吗,这就是我想要的?或者我应该采取另一种方法?我如何在不使用twig的情况下执行该操作?

EN

回答 1

Stack Overflow用户

发布于 2012-10-10 22:11:30

假设Stuff:Stuff:action没有@Route注释,您需要编写一个包装器操作,您将在其模板中呈现该Stuff:Stuff:action。然而,如果来自Stuff控制器的“操作”有@Route,那就更简单了。

不管怎样,AJAX出现在我的脑海中:

这里我用的是jQuery,但是你可以自由地使用你选择的库(或者什么都不用):

代码语言:javascript
运行
AI代码解释
复制
<input id="controllerLoader" type="button" value="Button" />

$(function(){
    $('#controllerLoader').click(function(e){
        $.ajax({
            url: '{{ path('wrapperRoute')}}', // or direct call if there is a `@Route`
            type: 'post',
            dataType: 'html',
            success: function(responseHtml){
                $('#controller_embed_position').html(responseHtml);
            }
        });
     });
});

仅当Stuff:Stuff:action中没有定义@Route注释时,才需要其余的注释。

您将需要一个虚拟控制器操作:

代码语言:javascript
运行
AI代码解释
复制
/**
 * @Template("AcmeDemoBundle::dummy.html.twig");
 * @Route("/dummy", name="wrapperRoute");
 */
public function dummyAction(){
    return array();
}

最后是dummy.html.twig:

代码语言:javascript
运行
AI代码解释
复制
{% render "Stuff:Stuff:action" with {'value' = value } %}

希望我没错过什么..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12827831

复制
相关文章
当谈论迭代器时,我谈些什么?
迭代器(Iterator)是 Python 以及其他各种编程语言中的一个非常常见且重要,但又充满着神秘感的概念。无论是 Python 的基础内置函数,还是各类高级话题,都处处可见迭代器的身影。
Python猫
2019/07/08
5250
Python:我的眼里只有你
昨天情人节,写了个表白的小代码,将女友照片进行缩放,自动贴到我照片眼球处,表达“我的眼里只有你”。
周小董
2019/03/25
1.1K0
Python:我的眼里只有你
读源码时,我才知道Spring Ioc这样设计的好处
要了解控制反转( Inversion of Control ), 我觉得有必要先了解软件设计的一个重要思想:依赖倒置原则(Dependency Inversion Principle )。
Bug开发工程师
2020/02/19
8330
读源码时,我才知道Spring Ioc这样设计的好处
当 Redis 发生高延迟时,到底发生了什么
Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多。但是 Redis 也会发生延迟时,这是就需要我们对其产生原因有深刻的了解,以便于快速排查问题,解决 Redis的延迟问题
Bug开发工程师
2019/11/15
1.6K0
当 snapshot 失败时发生了什么
工作中遇到了与 snapshot 异常相关的问题,特此总结一下,与 snapshot 相关的流程图如下:
shengjk1
2020/10/16
1.1K0
当 snapshot 失败时发生了什么
Python:我的眼里只有你
这个表白可还行?别急,为了自动生成这两张图片,可是动用了Python人脸识别功能这秘密武器的!
TTTEED
2020/07/09
3750
当 Redis 发生高延迟时,到底发生了什么
Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多。但是 Redis 也会发生延迟时,这是就需要我们对其产生原因有深刻的了解,以便于快速排查问题,解决 Redis的延迟问题
程序员历小冰
2019/11/12
1.3K0
当 Redis 发生高延迟时,到底发生了什么
当 Redis 发生高延迟时,到底发生了什么
Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多。但是 Redis 也会发生延迟时,这是就需要我们对其产生原因有深刻的了解,以便于快速排查问题,解决 Redis的延迟问题
程序员历小冰
2019/12/05
6450
我至今没想到,我也能在 CSS 中实现 SVG 动画了
动画是网络中不可或缺的一部分。与互联网早期使用 GIF 图像不同,现在的动画更加细腻和高雅。设计师和前端开发者利用动画使网站看起来更加精致,不仅提升用户体验,还吸引用户关注重要的元素,以传达信息。
前端修罗场
2023/10/07
1.5K0
网页打开时都发生了什么?我被吓着了
  在浏览器里输入网址或者点击链接,网页打开了……这是我们上网时再普通不过的一幕,但是如此简单的表象背后,却隐藏着无比复杂的技术流程。想涨涨知识吗?往下看吧。   一个HTTP请求的过程   为了简化我们先从一个HTTP请求开始,简要介绍一下一个HTTP求情的网络传输过程,也就是所谓的“从输入URL到页面下载完的过程中都发生了什么事情”。   ● DNS Lookup 先获得URL对应的IP地址   ● Socket Connect 浏览器和服务器建立TCP连接   ● Send Request 发送HTT
用户1289394
2018/02/28
1.8K0
网页打开时都发生了什么?我被吓着了
GitHub的这个彩蛋我居然才知道,我OUT了
搞开发的哪个还没有GitHub账户?作为一个GitHub的资深用户,今天居然才发现GitHub还有这个彩蛋。什么彩蛋呢?比如我的GitHub是: https://github.com/NotFound403 我可以建立一个同名的仓库 NotFound403。最终是这个效果: github 主页 它是怎么做到的呢?其实非常简单!只需要在同名仓库(我的为NotFound403)建立一个README.md,里面写Markdown,Github会自动将你写的Markdown文件渲染出来并放在你Github首页的顶
程序猿DD
2023/04/04
2420
GitHub的这个彩蛋我居然才知道,我OUT了
只有对儿童色情零容忍 那些伤害才不会再发生!
丨导读:保护未成年人,保障儿童权利,建设和谐健康的网络社会环境需要我们一起行动,对侵害未成年人的一切行为 Say No!
腾讯举报中心
2020/02/25
6640
Github的这个彩蛋我居然才知道,我OUT了
搞开发的哪个还没有GitHub账户?作为一个GitHub的资深用户,今天居然才发现GitHub还有这个彩蛋。什么彩蛋呢?比如我的GitHub是:
码农小胖哥
2021/03/03
4310
Github的这个彩蛋我居然才知道,我OUT了
Android 混淆(我的模板)
#-------------------------------------------定制化区域---------------------------------------------- #---------------------------------1.实体类--------------------------------- -keep class com.gieseckedevrient.convego.appworld.prod.bean.** { *; } #--------------
胖虎哥
2023/05/10
4020
Python人脸识别—我的眼里只有你
人脸识别总感觉特别高深,但是因为Python中已经有很多前辈写好了一些库,可以直接调用,大大降低了人脸识别的难度。
阿黎逸阳
2020/09/08
5450
我眼中的UVM|只有driver的验证平台
嗨,屏幕前的你还好吗?我是不二鱼,一个不喜欢写技术博客的IC验证工程师,写这个系列,是需要很大的勇气的,因为,写得人很多,但写得好的不多,我也是如此。我一个菜鸡,敢写UVM(应该也不止UVM,我尽量把其他知识杂糅进去),我是疯了吗?至今能有比张强老师写得好的估计也没有,我之所以写,是为了促进自己进步,换了一个新的环境,使用UVM也是日常必备,所以,以写促学,写一写我眼中的UVM,也希望能和大家一起学习,相互成就,如有错误,欢迎私信我批评指正。
用户10108023
2022/10/28
5350
疫情,我只能在家学习了
最近收到很多小伙伴的留言,3月份过完了一个offer都没收到。除了大环境和疫情的影响,还有遇到那种特别喜欢怼人的面试官,直接面到怀疑人生真是让人费解。。。 其实面试受打击是正常的,关键是要在面试中总结自己的不足!提前做好面试准备和技术储备,还是可以大幅度的提高面试效果的。 那么该怎样准备面试 斩获offer? 为此我专门找了一份《Java进阶学习+面试宝典》分享给大家,内容涵盖:计算机基础、Java、JVM、spring、算法、微服务、分布式、大厂面经、技术脑图等等...共1400+页 质量非常高!!!
Java3y
2022/04/12
7620
疫情,我只能在家学习了
JQuery中事件是否发生的判断
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/article/details/52916004
大黄大黄大黄
2018/09/14
1.5K0
教育王,我当定了
最近忙着复习,所以很少关注安全这块了。本次是针对自己学校某系统的渗透记录,已获得相应授权。通用漏洞涉及影响单位早前已提交至SRC平台,厂商以发布对应补丁。
用户7151998
2023/07/24
2790
教育王,我当定了
我的 Linux 一万小时
这不是一篇鸡汤文,因为我并没有在使用 Linux 一万小时后成为 Linux 达人,甚至在很多方面,我连新手都算不上。我走的这些弯路能篇成一本很有参考价值的反面教材,下面,我来讲讲我用 Linux 都折腾了啥。
哲洛不闹
2018/09/18
1.5K0
我的 Linux 一万小时

相似问题

只有在条件满足时才发生jquery事件。

40

如何使程序只有在发生特定事件时才停止?

11

只有在blob完全完成时才发生BlobCreated事件

24

只有当表单成功提交时才发生jQuery事件

23

多点触摸:只有在发生触摸移动时才触发touchend事件

47
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档