آپدیت کردن آژاکسی Listview

[right][font="Tahoma"]سلام بر دوستان .

سریع میرم سر اصل مطلب .

توی پروژه ای که دارم روش کار میکنم ، یه قسمت شبیه پست گذاشتن فیسبوک وجود داره.

تمام پست هام رو با

Clistview

نشون میدم.

حالا میخوام هروقت کسی توی صفحه ی خودش گزینه "ارسال" رو زد ، پستش به صورت آژاکسی به لیست اضافه بشه.

همین طور که همه هم میدونین (!) مشکل اینجاس که وقتی از تابع

$.fn.yiiListView.update("posts",{})

استفاده میکنم ، همه ی پست های قبلی هم رفرش میشه.در واقع کل لیست رفرش میشه.

آیا راهی هست که فقط پست جدید به انتها اضافه نشه ؟

با تشکر پیشاپیش

(در ضمن این اولین مطلبی هستش که دارم توی فروم میذارم ، اگر مشکلی هست ببخشید)[/font][/right]

یه آی دی یونیک بده به هر ویو و بعد اون آی دی رو ریفرش کن

[font="Tahoma"][right]دقیقا این کار رو واسه ی کامنت های زیر هر پست انجام دادم. چون هر پست من یک ای دی یونیک داره.

ولی خب تو صفحه ای که کاربران میخوان پست بذارن، هیج آی دی یونیکی نیس.[/right][/font]

[left]$this->widget(‘zii.widgets.CListView’, array(

'id' => 'posts',


'dataProvider' => $dataProvider,


'itemView' => '_post',


'viewData' => array('comment' => $comment),


'emptyText' => 'پستی موجود نیست !',


'summaryText' => '',


'sorterHeader' => '',

));

?>[/left]

[font="Tahoma"][right]این کدی هستش که برای ایجاد پست ها استفاده کردم. و همین لیست رو هم اپدیت میکنم.[/right][/font]

[font="Tahoma"][right]دوستان کسی نیس راهنمایی کنه ؟

حداقل بگید چطور می تونم به یه

listview

آی دی یونیک بدم ؟

این هم کد لیستم :[/right][/font]

[left]$this->widget(‘zii.widgets.CListView’, array(

'id' => 'posts',


'dataProvider' => $dataProvider,


'itemView' => '_post',


'viewData' => array('comment' => $comment),


'emptyText' => 'پستی موجود نیست !',


'summaryText' => '',


'sorterHeader' => '',

));[/left]

[font="Tahoma"][right]چطور میشه مفدار

‘id’ => ‘posts’

رو به ازای هر بار نمونه ساختن از

_post

یونیک کرد ؟[/right][/font]

[font="Tahoma"][rtl]اینی که می گم جواب سوال شما نیست اما اگه جای شما بودم از خودم یه ajax می نوشتم برا پست طرف و اگه همه چی ok بود متن پست رو echo می کردم و در غیر این صورت null اینجوری می تونید تو تابع بازگشت ajax چک کنید اگه مقداری برگشته بود مقدار رو به posts اضافه کنید (append) و اگه null بود یه div برا error هم درست کنید .hmtl اون رو هم بزارید برا نمایش خطا[/rtl][/font]

[right][font="Tahoma"]

بله ، درست میگین . به ذهن خودم هم رسید. باید همین کار رو بکنم.

ممنون

نمی دونم چرا تو این مورد yii انقدر ضعیف عمل کرده :([/font][/right]