Yii CHtml::ajaxSubmitButton всегда передает данные в метод POST
Я столкнулся с этой проблемой, когда использовал 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();
2 ответа
Решение
Это по замыслу. Ты можешь использовать CHtml::ajaxButton
вместо:
CHtml::ajaxButton('My Label','controller/action',array(
'type'=>'GET',
), array(
'type'=>'submit',
);
Что касается этого документа, значение 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, если вы не касаетесь основной функции.