【问题标题】:Yii renderpartial Eselect2 Design it's not Working properlyYii renderpartial Eselect2 设计它不能正常工作
【发布时间】:2016-04-18 13:13:17
【问题描述】:

我想在弹出窗口中显示我的数据,一旦用户选择部门显示,

使用 Ajax,Geeting 与用户 Selected Department 相关的员工姓名

数据正确,但在 Eselect2 小部件中显示员工的姓名

Yii中的Multiple option, that Eselect2 Design Notcoming 显示正常

选择下拉用户使用 ctrl 键选择多项选择。

我的编码,在那个 Div 工作人员中,我正在展示 eselect2 小部件数据。

Ajax 编码

<div id ="staffs></div>

function selectstaff(id)
{

    $.ajax({
        type: 'POST',
        url: '<?php echo Yii::app()->createAbsoluteUrl("user/users/ajaxselectstaff"); ?>',
        data: 'id=' + id,
        success: function (packages) {
            $('#staffs').html(packages);
        }
    });

}

控制器编码

public function actionAjaxselectstaff() {
    $id = Yii::app()->request->getPost('id');       
    $model = Users::model()->getAllStaffDepartment($id);
    $this->renderPartial('ajaxselect', array('model' => $model));
}

模型编码,

public function getAllStaffDepartment($id, $type = '') {
    $model = UserAccount::model()->findAll('department_code=:id', array(':id' => $id));
    $userid = "";
    $result = "";
    if (isset($model)) {
        foreach ($model as $data) {
            $userid .= $data->user_id . ",";
        }
    }
    $userid = trim($userid, ',');
    if ($userid != "") {
        $criteria = new CDbCriteria();
        $criteria->condition = "user_role_id!=" . Yii::app()->mconstant->CONST_FIVE . " AND user_role_id!= " . Yii::app()->mconstant->CONST_SIX . " AND user_role_id!= " . Yii::app()->mconstant->CONST_NINE . " AND user_id IN (" . $userid . ")";
        $result = Users::model()->findAll($criteria);
        $data = CHtml::listData($result, 'user_id', 'real_name');
        return $data;
    } else {
        return false;
    }
}

Ajax 选择页面:

<?php

Yii::app()->clientScript->scriptMap['jquery.js'] = false;
Yii::app()->clientScript->scriptMap['jquery.min.js'] = false;
if ($model) {
?>
<?php

$this->widget('ext.select2.ESelect2', array(
    'name' => 'users',
    'id' => 'users',
    'data' => $model,
    'htmlOptions' => array(
        'multiple' => true,
        'placeholder' => 'Select Users',
    ),
));
?>
<?php

  } else {
  echo "No Staff's Found";
 }
?>

我的代码有什么问题?我更改页面以正确渲染 eselect2 小部件设计,但渲染部分 eselect2 设计未获得,

【问题讨论】:

    标签: javascript php jquery ajax yii


    【解决方案1】:

    控制器有一些小的变化,如下所述。

    public function actionAjaxselectstaff() {
        $id = Yii::app()->request->getPost('id');       
        $model = Users::model()->getAllStaffDepartment($id);
        $this->renderPartial('ajaxselect', array('model' => $model) ,false , true);
    }
    

    请在下面的链接中找到关于 renderPartial 的第三个和第四个参数的描述:http://www.yiiframework.com/doc/api/1.1/CController#renderPartial-detail

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-08
      • 2011-11-16
      • 2022-10-15
      • 1970-01-01
      • 2013-02-14
      • 2017-10-21
      相关资源
      最近更新 更多