2011-04-08 95 views
2

大家好,我见过很多问题,但没有人满足我的渴望。我想在另一个选择的基础上填充选择。我正在使用zend框架。我有一个选择,将选择一个帐户,并根据选定的ID我想填充其他选择与基于第一个选定的选项从数据库中提取的值。我有第一个选择是这样的使用jquery填充从其他选择值中选择

 
<select name='select1'> 
<option value='1'>accoutn1</option> 
<option value='2'>accoutn2</option> 
<option value='3'>accoutn3</option> 
<option value='4'>accoutn4</option> 
</select> 

现在我想在第一选择的基础上,另一个其他选择使用jquery填充。选项将是基于第一个选定值从数据库中提取的值。我的另一个选择是

 
<select name='client'> 
</select> 

其中的jQuery的功能支持这一点,我可以选择的选项的basisi获取从数据库值和填充其他选择。我正在使用zendframe工作。任何想法?

回答

3

如果你使用jQuery,您可以使用此所示plugin

示范和使用here

1

使用事件可以绑定第一选择。而不是名称,使用ID或类。

使用$ .get()可以动态地从php页面获取信息。让该页面回显出第二个下拉菜单所需的标签<>。

绑定到一个onclick事件这让当前选择的值,或使用一个选择器来得到它:

var SelectedVal = $('#option1').val(); 
var Content; 

$.get('GetValues.php?SelectedValue=' + SelectedVal , function(data) { 
Content = data; 
}); 

然后使用$(“#客户端”)追加(内容);你可以填写选择。追加将在标签内添加“内容”。

希望这能给你一个好的起点。

0

您需要为第一个下拉列表绑定更改事件。然后在该下拉列表中,您需要调用一个ajax函数到您的php页面,这会为您的第二个下拉列表提供新的选择。 和第一个dropdown的ajax成功函数,您将填充第二个下拉列表。

对AJAX调用,你可以看到http://api.jquery.com/jQuery.ajax/

样品:

<select id='ddl_account'> 
    <option value='1'>accoutn1</option> 
    <option value='2'>accoutn2</option> 
    <option value='3'>accoutn3</option> 
    <option value='4'>accoutn4</option> 
</select> 

<select id='ddl_account_2nd'> 
</select> 

$(document).ready(function(){ 
    $('#ddl_account').change(function(){ 
     $.ajax({ 
      type: "POST", 
      url: "account.php", 
      data: "account=" + $(this).val(), 
      success: function(options){ 
      //options = "<option value='1'>accoutn1</option><option value='2'>accoutn2</option>" 
      $('#ddl_account_2nd').empty().append(options); 
      } 
     }); 
    }) 

})