繁体   English   中英

如何通过选择的值显示下拉显示记录?

[英]How to show drop down to display record by selected values?

我有两种类型的用户,一种是ADMIN ,另一种是School_Admin 我的申请中添加了许多学校。 每个学校都有自己的学校管理员,学校管理员可以查看支付记录,账单等所有内容。我创建了一个名为payments的页面,其中显示了向学校管理员支付的所有款项。 这是我的代码。 我正在使用YII PHP FRAMEWORK。

public function actionPayments(){
        $model = School::model()->with(array('payments'))->findByPk(Yii::app()->user->getState('school_id'));
        $this->render('//display/school_payment',array('model'=>$model));
}

因此,在View中,每个school_admin都可以转到其付款页面,并可以查看付款详情。 它使用foreach循环显示该学校的所有付款...

但我现在想要的是向每个公司的admin显示付款细节。 基本上,我想显示一个下拉列表,其中包含所有学校的列表,因此每当管理员选择任何学校时,它应显示所选学校的付款详细信息。 如果管理员选择学校1,它将显示学校一的所有付款,如果它选择学校2,则显示学校2的付款。

在此输入图像描述

我怎样才能实现这一目标? 这是我到目前为止所尝试的..

更新:

public function actionAdminPayments(){
        $this->pageTitle = 'Payments Report';
        $model = School::model()->findAll();
        $this->render('//reports/company_admin_payment',array('model'=>$model));
    }

这是我的观点,显示一个下拉选择与学校的所有名称..

<form class="form-horizontal" role="form">
                <div class="form-group">
                    <div class="col-sm-2">
                        <select name=id class="form-control" id="gender1">
                            <?php
                            foreach($model as $mod){ ?>
                                <option><?php echo $mod->name ?></option>
                            <?php } ?>
                        </select>
                    </div>
                </div>
                </form>

我根据你的概念制作了一个代码。 改变它你的。

     <select name=id class="form-control" id="gender1" onChange="getPaySchool(this.value);">
     <?php
     foreach($model as $mod){ ?>
        <option><?php echo $mod->name ?></option>
     <?php } ?>
    </select>
    <span id="payment-list"></span>

使用Javascript

<script>
function getPaySchool(val) {
 $.ajax({
 type: "POST",
 url: "example/aa",//here url to get the details function
 data:'schoolID='+val,
 success: function(data){
    $("#payment-list").html(data);
 }
 });
 }
 </script>

PHP函数

public function aa(){ // here i have wite smaple code, so you change according to your needs
  $users = DB::select('select * from userschool where active = ?', [1]);
  $msg="";
  foreach ($users as $user) {
     $msg .= $user->schoolname;
  }
  echo $msg;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM