انجمن ایران پی اچ پی
انتخاب داده در گراید viwe - نسخه قابل چاپ

+- انجمن ایران پی اچ پی
+-- انجمن: پی اچ پی/PHP (https://forum.iranphp.org/Forum-%D9%BE%DB%8C-%D8%A7%DA%86-%D9%BE%DB%8C-PHP)
+--- انجمن: فریم ورک ها و اکستنشن ها (https://forum.iranphp.org/Forum-%D9%81%D8%B1%DB%8C%D9%85-%D9%88%D8%B1%DA%A9-%D9%87%D8%A7-%D9%88-%D8%A7%DA%A9%D8%B3%D8%AA%D9%86%D8%B4%D9%86-%D9%87%D8%A7)
+---- انجمن: YII (https://forum.iranphp.org/Forum-YII)
--> +---- موضوع: انتخاب داده در گراید viwe

صفحات 1 2


انتخاب داده در گراید viwe - fahime87 - ۱۳۹۵ تير ۲۲

سلام دوستان من یک گراید ویو دارم به شکل زیر
[عکس: 85ho_capture.png]
lمیخوام بتونم یکی از درس ها رو انتخاب کنم و id اون رو با استفاده از ajax برای یک action بفرستم. نمیدونم چطور میتونم رکورد انتخاب شده رو بگیرم.


RE: انتخاب داده در گراید viwe - Alaa - ۱۳۹۵ تير ۲۲

سلام،
از yii\grid\CheckboxColumn استفاده کن، نمونه رو ببین:
کد پی‌اچ‌پی:
<?= GridView::widget([
        
'dataProvider' => $dataProvider,
        
'filterModel' => $searchModel,
        
'columns' => [
            [
'class' => 'yii\grid\SerialColumn'],
            [
                
'class' => 'yii\grid\CheckboxColumn',
            ],
            
            
//'id',
            // 'user_id',
            
'username',
            
'user_ip',
            
'controller',
            
'action',
            
'description',

            [
                
'class' => 'yii\grid\ActionColumn',
                
'template' => '{delete}',
            ],
        ],
    ]); 
?>

بعد با استفاده از کد زیر می‌تونی بخونی که کودوم فیلدها انتخاب شدن:
کد:
$('#w0').yiiGridView('getSelectedRows');



RE: انتخاب داده در گراید viwe - fahime87 - ۱۳۹۵ تير ۲۲

منظور از w0 همون id گراید ویو هست؟


RE: انتخاب داده در گراید viwe - Alaa - ۱۳۹۵ تير ۲۲

(۱۳۹۵ تير ۲۲, ۰۱:۲۱ ب.ظ)fahime87 نوشته: منظور از w0 همون id گراید ویو هست؟

بله.


RE: انتخاب داده در گراید viwe - fahime87 - ۱۳۹۵ شهریور ۱۴

(۱۳۹۵ تير ۲۲, ۰۱:۲۱ ب.ظ)fahime87 نوشته: منظور از w0 همون id گراید ویو هست؟
خوب ما چه طور میتونیم برای gridview یک id تعریف کنیم؟


RE: انتخاب داده در گراید viwe - mohammadhosain - ۱۳۹۵ شهریور ۱۵

(۱۳۹۵ شهریور ۱۴, ۰۲:۵۰ ب.ظ)fahime87 نوشته: خوب ما چه طور میتونیم برای gridview یک id تعریف کنیم؟
خودش به صورت توکار id رو می سازه. اگه خواستی خودت بهش id بدی :
کد پی‌اچ‌پی:
<?= GridView::widget([
        
'options'=>['id'=>'w0'],
.... 
یا
کد پی‌اچ‌پی:
<?= GridView::widget([
        
'id'=>'w0'



RE: انتخاب داده در گراید viwe - Alaa - ۱۳۹۵ شهریور ۱۵

سلام،
به نظرم کمی جستجو کنین زودتر به نتیجه می‌رسین.
این لینکی که گذاشتم رو نگاه کن، یه نمونه است که اکثر تنظیمات gridView رو نوشته. [لینک]


RE: انتخاب داده در گراید viwe - fahime87 - ۱۳۹۵ شهریور ۱۵

دوستان من از راه حل پیشنهادی استفاده کردم و برای اینکه بفهمم تابع فوق چه مقادیری به من میده از آن در کنسول لاگ گرفتم.متاسفانه یک آرایه ی خالی به من میده؟؟؟Confused


RE: انتخاب داده در گراید viwe - Alaa - ۱۳۹۵ شهریور ۱۵

سلام مجدد،
کدهای view رو قرار بدین.


RE: انتخاب داده در گراید viwe - fahime87 - ۱۳۹۵ شهریور ۱۶

کد پی‌اچ‌پی:
<?= GridView::widget([
          
'dataProvider' => $dataProvider,
           
//'filterModel' => $searchModel,

           
'options'=>['id'=>'w0'],
           
'columns' => [
               [
'class' => 'yii\grid\SerialColumn'],
                 [
'class' => 'yii\grid\CheckboxColumn'],

                [
'attribute' => 'fullname''label' => 'نام'],
                [
'attribute' => 'shortname''label' => 'نام کوتاه (لاتین)'],
               [
'attribute' => 'teacher.username''label' => 'استاد درس'],
           ],

       ]);
?>
        <?= Html::a(Yii::t('app''Add to class list'),null, ['class' => 'btn-x-lg btn btn-flat-blue''id'=> 'add-class' ])?>


    </div>
<?php $web Yii::getAlias('@web');?>
<script src="<?php echo $web '/js/jquery-1.11.2.min.js'?>"></script>
<script>
    jQuery( document ).ready(function() {
        jQuery('#add-class').on('click',function(e){
            window.alert("hey");
            var keys = jQuery('#w0').yiiGridView('getSelectedRows');
                console.log(keys);


        });
    });

</script>