• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
اشکال در صفحه بندی Grideview
#1
سلام
تو کنترلر 1 تابع دارم که 2تا گرید رو مدیریت می کنه.اطلاعات نمایش داده شده در گریدها متفاوته(مدل و تیبل یکی هست فقط رکوردهای انتخاب شده متفاوته)
مشکل اینه که وقتی روی صفحه 2 یا هرچند دیگه گرید دومی کلیک می کنی کل جدول محو میشه!!!!درصورتی که گرید اولی مشکلی نداره
controller
کد پی‌اچ‌پی:
public function actionCustomerAjax($visitor=null ,$start=null ,$end=null)
    {
        
$params =   array(
            
'model'=>new Report('customerList'),
            
'visitor'=>$visitor,
            
'start'=>$start,
            
'end'=>$end,
        ); 
        
$this->renderPartial('_customers' ,$params); 
    } 
ٔReport model
کد پی‌اچ‌پی:
public function customerList($visitor=null ,$start=null ,$end=null)
    {
        
$criteria = new CDbCriteria;        
        
$params = array(
            
'start'=>$start,
            
'end'=>$end,
            
'visitor'=>$visitor,
        );         
        if(
$start!=null && $end!=null)          $criteria->addBetweenCondition('`sDate`' ,$start ,$end);          
        if(
$visitor!=null)
        {
            
$visitor Visitors::model()->find('`vcode`=:VCode AND customerCode=:CC' ,array(':VCode'=>$visitor ,':CC'=>Yii::app()->user->cCode));
            
$visitor $visitor->id;
            
$criteria->compare('visitor',$visitor);
        }
        return 
Report::myPager('Customers' ,$criteria ,'reports/CustomerAjax' ,true ,$params);
    }

private function 
myPager($mClass ,$criteria ,$rout ,$activeR=true ,$params)
    {
        if(
$params===null$params = array();
        if(
$activeR)
        {
            return new 
CActiveDataProvider($mClass, array(
                
'criteria'=>$criteria,
                
'pagination'=>array(
                        
'pageSize'=>10,
                        
'params'=>$params,
                        
'route'=>$rout
                
),
            ));
        }
        else
        {
           return new 
CArrayDataProvider($mClass, array(
                
'pagination'=>array(
                        
'pageSize'=>10,
                        
'params'=>$params,
                        
'route'=>$rout
                
),
            )); 
        }    
    } 
ویو
کد پی‌اچ‌پی:
<div id="customerList">
            <
div><?php $this->actionCustomerAjax($visitor); ?></div>      <!--   گرید اول  -->
        </div>
        
        <div id="newCustomers">
            <div><?php $this->actionCustomerAjax($visitor ,$start ,$end); ?></div>   <!--   گرید دوم-->
        </div> 
_customer.php
کد پی‌اچ‌پی:
$this->widget('zii.widgets.grid.CGridView', array(
    
'dataProvider'=>$model->customerList($visitor ,$start ,$end),
    
'ajaxUpdate' => true,
    ),
    
'columns'=>array( 
*هر دوتا گرید به صورت popup باز میشن
* گریدها رو تو 2تا فایل مجزا هم قراردادم اما نشد(انگاری مشکل از تابع customerList )


فایل‌های پیوست تصاویر بندانگشتی
       
  پاسخ
تشکر شده توسط :
#2
کسی از استاتید به این موضوع برنخورده تا حالا؟؟؟
  پاسخ
تشکر شده توسط :
#3
1چیزی بهش برخوردم که می گم شاید یکی ناپرهیزی کنه و جواب بده
گاهی اوقات گرید ها باهم قاطی میشن یعنی فرضا گرید1 رو می خواد آپدیت کنه ولی گرید2 به روز (آپدیت) میشه!!!!
آی دی های گرید ها رو هم به صورت داینامیک تولید و به ویو ارسال کردم اما هیچ تاثیری نداشت!

جالبه تو انجمن (تو لیست اعضا) افراد واقعا باسواد و تجربه ای هستن اما ...
اطفا اگر کسی به این موضوع برخورده یا می تونه کمک کنه ، راهنمایی کنه
خلاصه ما کم سوادها رو هم دریابید Wink
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان