0

我有一个 Buttondata-attributes和一个 Component MyComp

调用组件时,应在 : 之前运行函数executeMyComp(sfWebRequest $request)。在我的executeMyComp 中,我执行了一些 Propel SQL,但我需要通过 AJAX 从 Button 发送一些变量。

  1. Ajax 应该将变量保存到 Symfony 会话中吗?如果是的话怎么办?
  2. 或者我应该通过 Ajax 发送一个 sfWebRequest 如果是的话如何?

谢谢你。

4

1 回答 1

0

for function 之前executeMyComp你可以使用preExecute函数。它们在实际操作之前运行,您可以通过使用 getModuleName 和 getActionName 方法检查它是否是特定操作来编写代码。

关于你的第二个问题,我总是使用 JQuery Ajax 函数,因为使用原型 ajax 总是存在一些冲突。它使用起来非常简单,您可以将请求的值发送到特定操作。所以不需要将它们添加到会话中

$(document).ready( function(){
    $.ajax({
            type: "POST",
            url: "your action URL",
            data: fields, // this fields variable(a string full of parameters) will be sent by request and you can get them using getParameter
            success: function(data){
                //if everything goes well you come here.here you can show your response.
            }
        });
});

当然,无需说您可以通过 jquery 将属性保存到变量中,然后再通过 ajax 发送它们,如下所示:

var myvar=$("#componentid").val();
于 2012-08-05T08:39:47.903 回答