javascript - Yii renderpartial Eselect2 Design 工作不正常

标签 javascript php jquery ajax yii

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

使用 Ajax、Geeting 与用户选择的部门相关的员工姓名

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

Yii中的多个选项,Eselect2设计没有出现它显示正常

选择下拉用户使用 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);
        }
    });

}

Controller 编码

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 设计未得到,

最佳答案

Controller 有一些小的变化,如下所述。

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

关于javascript - Yii renderpartial Eselect2 Design 工作不正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36695035/

相关文章:

javascript - 表单提交后重置 Html 表单并防止用户回来查看提交的数据

javascript - Node.js 从回调内部返回主循环

javascript - Angularjs 代码不工作

java - Android Javascript 接口(interface)

php - 需要便宜的源代码控制

php - 将 php session 移动到 redis。有可能不丢失现有 session 数据吗?

javascript - 使用 jQuery 调用另一个函数

javascript - 过滤并删除数组

php - 只是 PHP 无法在 Win7 64 位上安装 Wamp-Server

javascript - 使用 Jquery 检查 Javascript 对象中是否存在某些内容