2

当我使用 CHtml::ajaxSubmitButton 将一些数据作为 GET 方法提交时,我遇到了这个问题。不管我尝试什么,它总是以 POST 方法提交数据。

有什么我可能做错了吗?这是我的代码。

echo CHtml::beginForm(array('shoppingCart/addItem','GET')); 
echo CHtml::textField('qty', 1, array('size' => 3));
echo CHtml::hiddenField('product_id', $model->product_id); echo CHtml::ajaxSubmitButton('submit',          
                array('shoppingCart/addItem'), 
                array(
                        'type'=>'GET',
                        //'data' => array()),
                ));

echo CHtml::endForm();
4

2 回答 2

3

关于本文档的值type将被覆盖。

public static function ajaxSubmitButton($label,$url,$ajaxOptions=array(),$htmlOptions=array())
{
    $ajaxOptions['type']='POST';
    $htmlOptions['type']='submit';
    return self::ajaxButton($label,$url,$ajaxOptions,$htmlOptions);
}

所以只要不触及核心功能,就没有办法使用GET。

于 2014-04-22T06:37:38.523 回答
2

这是设计使然。您可以CHtml::ajaxButton改用:

CHtml::ajaxButton('My Label','controller/action',array(
            'type'=>'GET',
        ), array(
            'type'=>'submit',
        );
于 2014-04-22T15:35:15.427 回答