2011-04-27 64 views
0

我有一個窗體,有2個字段,是選擇列表。symfony - 填充多個下拉選擇列表(AJAX) - 更新

我需要從select_list_1一個選項,然後填充select_list_2

在我的模板,我有以下:

<script type="text/javascript"> 
$(document).ready(function() { 
    $('select#sf_guard_user_profile_corp_id').change(function() { 
    $.ajax({ 
     url: "updateAreaManager?corp_id=" + this.value, 
     dataType: "text/html", 
     success: (function(data) { 
     $('select#sf_guard_user_profile_area_manager_id').html(data); 
     }) 
    }); 
    }); 
}); 
</script> 

這將調用executeUpdateAreaManager方法,目前很簡單:

public function executeUpdateAreaManager(sfWebRequest $request) 
{ 
    $id = $request->getParameter('corp_id'); 
} 

有人能幫我把我需要的數據放到第二個選擇列表中嗎?

感謝

回答

0

我猜測,因爲你有一個corp_id被傳遞到你的動作,你正設法基於一個corp_id價值投資經理的列表。

在你的行動,你可以爲了得到一個結果集查詢數據庫,通過執行類似:

$q = Doctrine_Query::create()->from('Manager m')->innerJoin('m.Corps c')->where('c.id=', $id); 
$results = $q->execute(); 

然後,可以將結果傳遞到您的JavaScript,你想要的任何方式。我建議直接HTML。您的代碼將ressemble這樣的事情(仍然在你的action.class.php文件):

echo "<p>Hi, I came from an action.</p>"; 
return true; 

在這一點上,你的JavaScript應顯示該HTML頁面上。讓它產生你所想的,假設你的案例中有一個HTML表單。

+0

我的主要問題是將值傳遞到第二個選擇列表,因爲模板是一個'_form.php'部分。 – 2011-04-28 08:02:13

+0

有誰知道我怎樣將值傳遞迴'_form.php'部分並填充第二個下拉列表? – 2011-04-28 12:47:21

相關問題