Php ajaxSubmitButton在linux服务器上不工作

Php ajaxSubmitButton在linux服务器上不工作,php,javascript,ajax,yii,Php,Javascript,Ajax,Yii,下面是一个ajaxSubmitButton,用于在mac上工作,而不是在linux服务器上工作。在linux服务器错误控制台上,在属性列表后显示以下错误:SyntaxError:missing} <?php echo CHtml::ajaxSubmitButton( '', array('/modelA/action'), array( 'type'=>'POST',

下面是一个ajaxSubmitButton,用于在mac上工作,而不是在linux服务器上工作。在linux服务器错误控制台上,在属性列表后显示以下错误:SyntaxError:missing}

<?php
     echo CHtml::ajaxSubmitButton(
        '',          
        array('/modelA/action'), 
        array(
            'type'=>'POST',
            'success' => 'js:function(){window.location="/modelB/action"}',
        ),
        array(
            'id'=>'button',
        )
    ); 
?>

悬空逗号是许多JS问题的根源


悬空的逗号是许多JS问题的根源。

您需要删除代码中的“JS:”部分(在函数之前),然后它就可以工作了

所以它看起来是这样的:

array(
        'id'=>'button',
                      ^---
<?php
     echo CHtml::ajaxSubmitButton(
        '',          
        array('/modelA/action'), 
        array(
            'type'=>'POST',
            'success' => 'function(){window.location="/modelB/action"}',
        ),
        array(
            'id'=>'button',
        )
    ); 
?>

您需要删除代码中的'js:'部分(在函数之前),然后它就可以工作了

所以它看起来是这样的:

array(
        'id'=>'button',
                      ^---
<?php
     echo CHtml::ajaxSubmitButton(
        '',          
        array('/modelA/action'), 
        array(
            'type'=>'POST',
            'success' => 'function(){window.location="/modelB/action"}',
        ),
        array(
            'id'=>'button',
        )
    ); 
?>

如果我没有弄错的话,上面显示的代码是PHP,而不是javascriptTrue,但是op的错误消息不是标准的PHP消息。php从不抱怨缺少
}
,它只会吐出一个“下一步会发生什么意外”。删除了逗号,但问题仍然存在exists@MarcB正确,这就是为什么我要求OP发布生成的javascript,因为我怀疑这就是错误所在。如果我没有弄错,上面显示的代码是PHP,而不是javascriptTrue,但是op的错误消息不是标准的php消息。php从不抱怨缺少
}
,它只会吐出一个“下一步会发生什么意外”。删除了逗号,但问题仍然存在exists@MarcB正确,这就是为什么我要求OP发布生成的javascript,因为我怀疑这就是错误所在,请发布生成的javascript。如果我理解正确,这个错误会显示在浏览器的javascript错误控制台中?更新的问题,这就是你要找的吗?有点,但我想我有足够的信息来帮助你,请在下面给出我的答案。如果我理解正确,这个错误会显示在浏览器javascript错误控制台中?更新的问题,这就是你要找的吗?有点,但我想我有足够的信息来帮助你,请参阅下面我的答案