2011-10-26 148 views

回答

1

其基本思想是将该数据提交给服务器(通过POST返回或AJAX),然后用数据进行响应。

<select id="mySel" onChange="sendData()"> 

我所做的有添加了javascript函数被调用每一个下拉值已更改时间。

function sendData() { 
    $.post("processData.php", {selected: $(this).val()}, updateData(data)); 
} 

这是我为select onChange事件写的函数的骨架。我在这里跳过了一两步,并使用jQuery帮助创建一个AJAX请求回到服务器。我会打电话给我的PHP脚本processData.php来帮助处理选择哪个元素。 {}包含我想要发送给服务器的数据,在这种情况下是选定的值。最后,我从服务器获取数据后该怎么做。

现在我将处于我的php文件并能够处理我接收的数据并运行我的查询以获取新数据。一旦完成,我只需json_encode的数据,并与它作出回应。

现在回到javascript世界,我的UpdateData函数被自动调用并传递了json数据。

function updateData(data) { 
    var select = '<select name="sel2">'; 
    $().each(data, function(index, val){ 
     select += '<option name="'+ index+ '">'+ value+ '</option>'; 
    }); 
    $("#mySel").parent.append(select); 
} 

这将允许我从返回的数据生成一个新的选择列表(假设json中的键/值配对数组)。

我没有真正测试过任何代码,它的设计更像是指南和伪代码。

0

当用户选择从一个select元素的值,发送一个XMLHttpRequest来获取数据来填充第二选择元素。

相关问题