Php 如何选择和获取yii的Cgridvew的行id
从过去10天开始,我一直在研究yii框架。我在我的项目中做了很多,但我坚持一个问题。在下表中,当我单击任意行时,它应该在jquery对话框中获取所选行的数据,当单击表工具栏上的编辑按钮时,它应该被打开。 例如,当我用户单击列出行中的任意行时,它将高亮显示,如果单击“编辑”按钮,它将打开包含选定行数据的对话框窗体。 这是我的代码Php 如何选择和获取yii的Cgridvew的行id,php,yii,cgridview,Php,Yii,Cgridview,从过去10天开始,我一直在研究yii框架。我在我的项目中做了很多,但我坚持一个问题。在下表中,当我单击任意行时,它应该在jquery对话框中获取所选行的数据,当单击表工具栏上的编辑按钮时,它应该被打开。 例如,当我用户单击列出行中的任意行时,它将高亮显示,如果单击“编辑”按钮,它将打开包含选定行数据的对话框窗体。 这是我的代码 <table class="display" id="dt3"> <ul class="table-toolbar">
<table class="display" id="dt3">
<ul class="table-toolbar">
<li><a href="#" id="create-user"><img src="<?php echo Yii::app()->request->baseUrl; ?>/images/icons/basic/plus.png" alt="" /> Add</a></li>
<li><a href="#"><img src="<?php echo Yii::app()->request->baseUrl; ?>/images/icons/basic/delete.png" alt="" /> Delete</a></li>
<li><a href="#" id="create-user2"><img src="<?php echo Yii::app()->request->baseUrl; ?>/images/icons/basic/edit.png" alt="" /> Edit</a></li>
</ul>
<ul>
<table class="display" id="dt4">
<tr>
<?php
$dataProvider=new CActiveDataProvider('Station');
$this->widget('zii.widgets.grid.CGridView', array
(
'dataProvider'=>$dataProvider,
'itemsCssClass'=>'display',
'summaryText'=>'',
'rowCssClass'=>array('odd gradeX','even gradeC'),
'htmlOptions'=>array('class'=>'display'),
'columns'=>array(
array
(
'name'=>'Station Name',
'value'=>'$data->Station_Name',
),
array
(
'name'=>'Status ',
'value'=>'$data->Status_value',
),
array
(
'name'=>'Description ',
'value'=>'$data->Station_Description',
),
array
(
'name'=>'Order ID ',
'value'=>'$data->OrderID',
),
array
(
'name'=>'Updated By ',
'value'=>'$data->Updated_by',
),
),
)
); ?>
</tr>
</table>
</ul>
</table>
<div id="dialog-form" title="Add/Edit Station" class="box-content" style="height: 100px">
<form action="index.php?r=setting/stations" method="POST">
<div class="form-row">
<label class="form-label">Station Name</label>
<div class="form-item">
<input type="text" name="station_name" />
</div>
</div>
<div class="form-row">
<label class="form-label">Description</label>
<div class="form-item">
<input type="text" name="station_description"/>
</div>
</div>
<div class="form-row">
<label class="form-label">Order Id</label>
<div class="form-item">
<input type="text"name="order_Id" />
</div>
</div>
<div class="form-row">
<label class="form-label">Updated By</label>
<div class="form-item">
<input type="text" name="updated_by" />
</div>
</div>
<ul style="float:right;">
<li style="float:right;"><a href="#"><input type="submit" class="button small green" value="Add Station"></a></li>
</ul>
</form>
</div>
站名
描述
订单号
更新人
您应该在CGridView
配置中添加id
属性:
'id' => 'station-grid',
然后,在javascript代码中的任何一点上,您都可以使用以下命令获取当前选定的行:
var selected = $('#station-grid').yiiGridView('getSelection');
例如,您可以在网格的每个
tr
上的click
处理程序中使用上述内容。如何将其集成到javascript中取决于您。对于所有选中的行ID,我们使用此
var id = $.fn.yiiGridView.getChecked("your-grid-id", "selectedIds"); // array of seleted id's from grid
如果单击行,我们可以得到这样的id
var id = $.fn.yiiGridView.getSelection(grid_id);
var id = id[0];
对不起,这不是一个正确的答案,但也许你只是在寻找?