好的,我在 PHP 中有这个函数,它获取一个属性并返回一个数组。像这样的事情:
function getProvinces($countryID){
return arrayWithProvinces($countryID);}
每次父选择更改时,都应使用新 ID 执行函数 getProvinces(),并且 arrayWithProvince 应作为选项包含在子选择中。
我正在使用 jquery 来处理事件,正如我在某处发现的那样。我需要做这样的事情。
$("#selectCountry").change(function() {
var parent = $(this).val(); //get option value from parent
var prov = <?php echo json_encode($pagina->getProvinces( <PARENT> )); ?>;
list(prov);
我的问题是我不知道如何告诉 getProvinces($countryID) php 函数哪个是父级的新值。
提前致谢。
最佳答案
您应该使用 JavaScript 来使用动态内容刷新页面的一部分。下面是使用 jquery 的 ajax
函数的示例。当选择 ID 为 #parent_select
时> 更改您调用 php 脚本并将返回的数据(示例中子选择的 html)附加到您想要的 div 中。
Javascript 部分是这样的:
$("#parent_select").change(function() {
$.ajax({
url: "your_script.php?cid="+$(this).val(),
success: function(html){
$("#child_select_container").append(html);
}
});
});
your_script.php
代码看起来像:
<?php
function getProvinces($countryID){
return arrayWithProvinces($countryID);}
$countryID=(int)$_GET['cid'];
$provinces=getProvinces($countryID);
echo '<select id="child_select">';
foreach($provinces as $key=>$province){
echo '<option id="'.$key.'">'.$province.'</option>';
}
echo '</select>;
我还没有测试过这个例子。这只是一个基本的示例。您应该能够从这里开始工作。但是如果您有任何问题,请告诉我。
关于javascript - 使用 php 动态更改选择选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37170144/