PDA

View Full Version : ارسال نشدن اطلاعات با اجاکس لینک



masiha68
سه شنبه 01 اردیبهشت 1394, 09:40 صبح
سلام
من واسه یه اجاکس لینک این سه تا لینک رو ایجاد کردم ولی هیچکدوم کار نمی کنن

echo CHtml::ajaxLink('new link',Yii::app()->createUrl('superuser/commnet/acceptcommnet',array('id'=>$data->key)),array ('update'=>'#req_res'));

echo CHtml::ajaxLink(
$text = 'Click me',
$url = Yii::app()->createUrl('superuser/commnet/acceptcommnet'),
$ajaxOptions=array (
'type'=>'POST',
'dataType'=>'json',
'success'=>'function(html){ jQuery("#req_res").html(html); }'
),
$htmlOptions=array ()
);
echo CHtml::ajaxLink(
$text = 'accept',
$url = array(Yii::app()->createUrl('superuser/commnet/acceptcommnet',array('id'=>$data->key))),
$ajaxOptions=array (

'update'=>'#req_res'
),

$htmlOptions=array ()
);

اکشن :

function actionAcceptcommnet()
{
$this->render('index');
var_dump($_POST);
echo "YeS";
Yii::app()->end();
}

البته من خودم فایل جی کوئری روی توی پیج لود کردم ...احتمال داره مشکل از اون باشه ؟

MMSHFE
سه شنبه 01 اردیبهشت 1394, 10:56 صبح
echo CHtml::ajaxLink('new link', Yii::app()->createAbsoluteUrl('superuser/commnet/acceptcommnet', array('id'=>$data->key)), array('update'=>'#req_res'));

function actionAcceptcommnet()
{
if(!Yii::app()->request->isAjaxRequest) {
Yii::app()->end();
}
echo '<pre>' . CVarDumper::dump($_POST, 10, true) . '</pre>';
}
حتماً jQuery خود Yii رو بارگذاری کنید. نباید خودتون دستی jQuery رو لود کنید. بهتره این کد رو توی کلاس Controller در مسیر components بگذارین:

public function init()
{
Yii::app()->clientScript->registerCoreScript('yii');
}

masiha68
سه شنبه 01 اردیبهشت 1394, 11:06 صبح
ممنون حل شد
ولی میشه بگید مشکل از کجا بود ... از createAbsoluteUrl یا از registerCoreScript

masiha68
سه شنبه 01 اردیبهشت 1394, 11:12 صبح
یه مسئله ی عجیبی که پیش میاد اینه که با هر بار کلیک روی لینک اجاکس اطلاعاتی که ارسال میشه (همون key) تغییر می کنه . من دوتا key دارم (1 و 2) و هر بار که کلیک می کنم مقدار نمایش داده شده عوض میشه

alirezara
پنج شنبه 03 اردیبهشت 1394, 13:15 عصر
سلام استاد خسته نباشید

استاد من هم با مشکل دوستمون روبرو هستم. کدی که گذاشتید رو اضافه کردم و jquery.min.js که در قالبم اضافه کرده بودم رو هم حذف کردم. برای مدتی درست شد اما قالبم بهم ریخت یعنی منوهای کشویی دیگه باز نمی شدن.

وقتی دوباره jquery.min.js رو به قالب اضافه کردم دوباره درست شد. اما لینک آژاکسی باز کار نکرد.