欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

下拉列表多級聯(lián)動dropDownList示例代碼

 更新時間:2013年06月27日 17:22:04   作者:  
本文為大家詳細介紹下下拉列表多級聯(lián)動 dropDownList具體的實現代碼,感興趣的朋友可以參考下哈,至于一些細節(jié)部分后續(xù)再補
視圖:
cdnauto/views/config/index.php
復制代碼 代碼如下:

echo CHtml::dropDownList('node', '', CHtml::listData(Node::model()->findAll(),'name','name'),array('empty'=>'--請選擇節(jié)點--',
'id' => 'node',
'ajax'=>array(
'type'=>'POST',
'url'=>Yii::app()->createUrl('cdnauto/config/getNodeServersByNodeName'),
'update'=>'#servers',
'data'=>array('node_name'=>'js:$("#node").val()'),
)
)
);
echo "        ";
echo CHtml::dropDownList('servers', '', array('--請選擇服務器--'));

控制器:
cdnauto/controllers/ConfigController.php
復制代碼 代碼如下:

public function actionGetNodeServersByNodeName(){
// if(!Yii::app()->request->isAjaxRequest)
// throw new CHttpException(404);
$node_name = $_POST['node_name'];
$nodeid = Node::model()->getNodeId($_POST['node_name']); //通過節(jié)點名稱獲取該節(jié)點ID
$server = GossServer::model()->getServerByNodeid($nodeid); //通過節(jié)點ID獲取服務器信息
//$server 為array類型,形如 $server = array(array('name'=>'name1'),array('name'=>'name2'));所以需要兩次foreach
if(isset($server)){
foreach ($server as $k=>$v){
foreach($v as $kk => $vv){
echo CHtml::tag('option', array('value'=>$kk), CHtml::encode($vv), true);
}
}
}else{
echo CHtml::tag('option', array('value'=>''), 'servers', true);
}
}

模型:
GossServer.php
復制代碼 代碼如下:

/**
* 通過節(jié)點ID獲取該節(jié)點下所有的服務器名稱
* @author ysdaniel
*/
public static function getServerByNodeid($nodeid)
{
$sql = "SELECT name FROM OSS_Server WHERE nodeid = '{$nodeid}' ";
///$sql = "SELECT name,nodeid FROM OSS_Server WHERE nodeid = '{$nodeid}' "; //both ok
$cmd = Yii::app()->db->createCommand($sql);
$ret = $cmd->queryAll();
if (!$ret){
throw new Exception("找不到這個節(jié)點對應的服務器");
}
return $ret;
}

Node.php
復制代碼 代碼如下:

/**
* 通過nodename獲取nodeid名
* @author
*/
public static function getNodeId($name)
{
$sql = "SELECT id FROM OSS_Node WHERE name = '{$name}'";
$cmd = Yii::app()->db->createCommand($sql);
$ret = $cmd->queryAll();
if (!$ret){
return null;
//throw new Exception("找不到Node{$name}");
}
return $ret[0]['id'];
}

其它:
數據表結構
效果:
沒有選擇節(jié)點前:
 
細節(jié)有空再補上了。

相關文章

  • ThinkPhP5整合微信小程序訂閱消息實用代碼

    ThinkPhP5整合微信小程序訂閱消息實用代碼

    記錄一下開發(fā)小程序消息推送的實例,配合后端tp推送,要使用微信訂閱通知功能,需要用戶首先在小程序點擊訂閱后,后臺方可推送相關訂閱通知模板,否則無法直接推送
    2023-08-08
  • php 生成Tab鍵或逗號分隔的CSV

    php 生成Tab鍵或逗號分隔的CSV

    這篇文章主要介紹了php 生成Tab鍵或逗號分隔的CSV的相關資料,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • laravel框架 api自定義全局異常處理方法

    laravel框架 api自定義全局異常處理方法

    今天小編就為大家分享一篇laravel框架 api自定義全局異常處理方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • 在 Laravel 6 中緩存數據庫查詢結果的方法

    在 Laravel 6 中緩存數據庫查詢結果的方法

    這篇文章主要介紹了在 Laravel 6 中緩存數據庫查詢結果的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • Laravel框架實現model層的增刪改查(CURD)操作示例

    Laravel框架實現model層的增刪改查(CURD)操作示例

    這篇文章主要介紹了Laravel框架實現model層的增刪改查(CURD)操作,結合實例形式分析了Laravel框架模型model層進行數據庫的增刪改查操作具體實現技巧,需要的朋友可以參考下
    2018-05-05
  • PHP實現今天是星期幾的幾種寫法

    PHP實現今天是星期幾的幾種寫法

    今天是星期幾的寫法有很多,本文整理了常用的三種,感興趣的朋友可以了解下
    2013-09-09
  • php寫的AES加密解密類分享

    php寫的AES加密解密類分享

    這篇文章主要介紹了php寫的AES加密解密類,實際是為YII框架寫的,不在YII框架時只需替換其中的兩句代碼即可使用,需要的朋友可以參考下
    2014-06-06
  • PHP-FPM和Nginx的通信機制詳解

    PHP-FPM和Nginx的通信機制詳解

    這篇文章主要給大家介紹了關于PHP-FPM和Nginx通信機制的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-02-02
  • Laravel5中實現模糊匹配加多條件查詢功能的方法

    Laravel5中實現模糊匹配加多條件查詢功能的方法

    這篇文章主要介紹了Laravel5中實現模糊匹配加多條件查詢功能的方法,結合實例形式分析了Laravel5多條件模糊查詢及相關封裝操作技巧,需要的朋友可以參考下
    2018-03-03
  • AES加解密在php接口請求過程中的應用示例

    AES加解密在php接口請求過程中的應用示例

    在我們的編程的過程中,經常會遇到加密的情況,怎么才會合理運用,本篇文章主要介紹了AES加解密在php接口請求過程中的應用示例,有需要的可以了解一下。
    2016-10-10

最新評論