2014-03-07 86 views
0

我有一個下拉列表下拉列表的onchange用ajax不工作

MODELA

<?php echo $form->labelEx($model,'type'); ?> 
    <?php echo $form->dropDownList($model,'type',array('empty'=>'choose refertype','1'=>'typeA','2'=>'typeB','3'=>'typeC')); ?> 
    <?php echo $form->error($model,'type'); ?> 

以下是我的Ajax代碼是什麼必須做的是,當我選擇的typeA或任何其他類型的,必須獲取從數據庫數據(取決於MODELA數據從分貝modelB的類型必須被取出)和未用於

01只

$('#modelname_type').change(function(){ 

    if($('#modelname_type').val() == '1'){ 
     $('#showdata').show(); 
     $.ajax(
      'url':'Yii::app()->createUrl('controllerB/actionB')', 
      'type':'get', 
      'data':array('id'=>$_GET['id']), 
      'success': function(res){  
       $("#showdata").html(res); 
      }  
     );   
     $('#codea').hide();  
    } 
}); 

作品時工作在#showdata DIV顯示

$('#modelname_type').change(function(){ 

    if($('#modelname_type').val() == '1'){ 
     $('#showdata').show();   
     $('#codea').hide();  
    } 
}); 

請讓我知道我要去哪裏錯了我真的從過去一週堅持請我不是阿賈克斯,強有力的

+1

JavaScript不執行'ÿ ii :: app() - > createUrl('controllerB/actionB')'',因爲它是php的功能。 –

+0

而''data':array('id'=> $ _ GET ['id'])''也是。 – Goodnickoff

+0

那麼我該怎麼做 – hir

回答

0

這裏

if($('#modelname_type').val() == '1'){ 

變化

var mtype =$('#modelname_type').val(); 
    if(mtype == '1'){ 

Ajax中

url:'<?php echo Yii::app()->request->baseUrl;?>/index.php/controllerB/actionB/id/"+str';

會像一個魅力

0

正確使用jQuery的Ajax調用的是:

$.ajax(
    'url': 'your_script.php', 
    'type': 'get', 
    'data': array, 
    'success': function (res) { 
     $("#showdata").html(res); 
    } 
}); 

其中array是一個JavaScript數組。

你的代碼不起作用,因爲url和數據不正確。 Javascript不會執行PHP代碼。

這裏有教程,你可能會發現有用:

+0

不工作'model_s'中的'your_script.php'viewB和ajax調用在modelA'viewA中作爲它的全部在yii d4 ws調用dt方式。什麼回合數據:數組我需要傳遞查詢字符串是在網址 – hir

+0

這只是一個計劃。當在數組中調用一個帶有數據的GET請求被髮送到腳本'yours_script.php'時。這是(簡化)ajax調用如何工作以及如何使用它。現在你的任務是使用這些知識來修改你的代碼。希望它有幫助。 –

+0

爲錨標記它的作品dropdownlist它doesnt .modelB的viewB和ajax調用是在modelA'viewA其中modelB的viewB被顯示 – hir

0

供養下拉列表 您可以檢查此Link包含基於國家,特定狀態填充其他下拉列表..

https://stackoverflow.com/a/22169219/3012139

+0

謝謝sandeep :)我的查詢不依賴下拉菜單,而是彈出onchange下拉.....並且我得到了soln xmlhttp.open(「GET」,「<?php echo Yii :: app( ) - >請求 - >的baseUrl;?>/index.php的/ controllerB/actionB/ID /「+ STR,TRUE); – hir