Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从gridview中选择要在yii2中形成的数据_Yii2 - Fatal编程技术网

如何从gridview中选择要在yii2中形成的数据

如何从gridview中选择要在yii2中形成的数据,yii2,Yii2,我必须在“生产”表中插入数据。productid、productname、batchno存储在表“productbatch”中。我想在单击gridview时从gridview中选择这些字段到表单。我该怎么做? producbatch的index.php- <?php use yii\helpers\Html; use yii\grid\GridView; /* @var $this yii\web\View */ /* @var $searchModel frontend\module

我必须在“生产”表中插入数据。productid、productname、batchno存储在表“productbatch”中。我想在单击gridview时从gridview中选择这些字段到表单。我该怎么做? producbatch的index.php-

<?php

use yii\helpers\Html;
use yii\grid\GridView;

/* @var $this yii\web\View */
/* @var $searchModel frontend\modules\production\models\ProductbatchSearch */
/* @var $dataProvider yii\data\ActiveDataProvider */

$this->title = 'Productbatches';
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="productbatch-index">

    <h1><?= Html::encode($this->title) ?></h1>
    <?php // echo $this->render('_search', ['model' => $searchModel]); ?>

    <p>
        <?= Html::a('Create Productbatch', ['create'], ['class' => 'btn btn-success']) ?>
    </p>

    <?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            //['class' => 'yii\grid\SerialColumn'],
            ['class' => 'yii\grid\CheckboxColumn'],
            'itemid',
            'productname',
            'batchno:ntext',
            //'mfgdate',
            //'expdate',
            // 'mrp',
            // 'rate',

            ['class' => 'yii\grid\ActionColumn'],
        ],
    ]); ?>

</div>


_生产方式

<?php

use yii\helpers\Html;
use yii\widgets\ActiveForm;
use yii\web\View;
/* @var $this yii\web\View */
/* @var $model frontend\modules\production\models\Production */
/* @var $form yii\widgets\ActiveForm */
?>

<div class="production-form">

    <?php $form = ActiveForm::begin(); ?>

    <?= $form->field($model, 'productiondate')->textInput() ?>

    <?= $form->field($model, 'itemid')->textInput() ?>

    <?= $form->field($model, 'productname')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'batchno')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'prodqty')->textInput() ?>

    <div class="form-group">
        <?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
    </div>

    <?php ActiveForm::end(); ?>

</div>
<?php
    $this->RegisterJs ( "
    $('document').ready(function(){
        // $('#".Html::getInputId($model, 'mrp')."').keyup(function(){ 
        //              var total = this.value;
        //              var percent = 10;
        //              var discount_value = this.value - ((total / 100) * percent);
        //             $('#".Html::getInputId($model, 'rate')."').val(discount_value);    
        //          });
         var keys = $('#grid').yiiGridView('getSelectedRows');
    });

    ", View::POS_END);
  ?>


最简单的方法是基于检查列并获取数组中的相关行

这是yii指南

用户可以单击复选框来选择网格的行。可以通过调用以下JavaScript来获取所选行

     var keys = $('#my_gridview_id').yiiGridView('getSelectedRows');

您好,scaisEdge,我在问题中添加了productbatch的index.php和生产的_形式。请告诉我如何从生产表单中通过复选框访问productbatch gridview。当我打开生产/创建时,它只是打开一个包含以下字段的表单:productiondate、itemid、productname、batchno和qty。现在我想从productbatch的checkboxcolumn中填充itemid、productname和batchno。当我在创建生产表单时,无法获取如何从productbatch checkboxcolumn中选择数据。您可以添加一个按钮(或带有按钮的列),然后在此按钮内调用所需的javascript。我不太确定如何执行此操作。你能告诉我吗?谷歌上有很多通过按钮调用javscript函数的例子
     var keys = $('#my_gridview_id').yiiGridView('getSelectedRows');