下面是我目前正在使用的一些代码,它根据第一个下拉列表选择的值填充第二个下拉列表。一切都按计划进行,除了当我在第一个下拉列表中选择"选择猫"的内容时,选择猫消失了,我的下拉菜单只有我数据库中的项目。我怎样才能让选择猫留下来,因为没有它,他们就不必选择任何东西。
<div class="right">
<h5>Process   <select id="Process" onchange="getProcess(this.value)" name="Process" class='form-control'>
<option value="">Select Process</option>
<?php
$sql1 = 'SELECT tblProcess.PID, tblProcess.pName
FROM tblProcess
WHERE tblProcess.pActive=1
ORDER BY tblProcess.pOrder';
foreach( $stamp->query($sql1) as $row ) {
echo '<option value="' .$row['PID'].'"> '.$row['pName'].'</option>';
}
?>
</select>
<h5>Category   <select id="Cat" onchange="getCat(this.value)" name="Cat" class='form-control'>
<option value="">Select Cat</option>
<script type="text/javascript">
function getProcess(PID)
{
var html = $.ajax({
type: "POST",
url: "proc_aj.php",
data: "PID=" +PID,
async: false
}).responseText;
if(html){
$("#Cat").html(html);
}
}
</script>
您可以在选择"猫"之后立即添加另一个占位符。
<select id="Process" disabled></select>
将响应放入"进程"选择中:
if(html){
$("#Process").html(html);
}
我想通了。我将精选猫移到我的"proc_aj.php"页面!
<?php
require_once('conn/conn.php');
$sql2 = "SELECT CID, PID, cName from tblCategory where cActive=1 and PID=".$_REQUEST['PID'];
echo '<option value="">Select Cat</option>';
foreach( $stamp->query($sql2) as $row ) {
echo'<option value="' .$row['CID'].'"> '.$row['cName'].'</option>';
}
?>