【问题标题】:Named parameters passing incorrectly through ajax call (Js helper) in CakePHP命名参数通过 CakePHP 中的 ajax 调用(Js 助手)错误传递
【发布时间】:2010-12-21 18:59:02
【问题描述】:

我正在尝试通过传递命名参数来进行 ajax 调用:

$this->Js->link('Save',array(
                          'controller' => 'screens', 
                          'action' => 'create') + $this->params['named'], 
                       array( 'update' => '#results'));

但是在上面调用中传递的命名参数是不正确的(尽管在没有ajax的情况下它们是正确的):

示例结果:

没有 Ajax:http://paste.ubuntu.com/546338/
有 Ajax:http://paste.ubuntu.com/546337/

转义 Ajax URL 可能会有所帮助,但我该怎么做(或其他方式)?

附: :问题只存在于 Js Helper 中,如果我使用 Ajax 助手,则数据正确传递。但是,Ajax 助手已被弃用,不推荐使用。

【问题讨论】:

    标签: cakephp jquery cakephp-1.3


    【解决方案1】:

    狮子座的意思是这样的:

    $this->Js->link('save', array('url'=>array('controller'=>'blah', 'action'=>'foo', $this->params['named']), 'update'=>'div'));
    

    【讨论】:

      【解决方案2】:

      尝试在方法调用之外构造 $url 数组。我发现数组算术在最好的时候是不可靠的。副作用是您将能够debug($url); 以确保一切正常。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-20
      • 1970-01-01
      • 2021-07-31
      • 2012-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多