【发布时间】:2021-04-20 16:14:48
【问题描述】:
Goodday,最近我尝试学习 AJAX。我已经制作了一个示例,该示例捕获从第一个下拉框中选择的数据并过滤到第二个下拉框中。但是,AJAX 请求似乎没有运行。
HTML
<?php include 'conn.php' ?>
<!DOCTYPE html>
<html>
<head>
<title>
AJAX for extensions!
</title>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
function fetch_select(val)
{
$.ajax({
type: 'post',
url: 'fetch_data.php',
data: {
get_option:val
},
success: function (response) {
document.getElementByID("owner_id").innerHTML=response;
}
});
}
</script>
</head>
<body>
<p id="heading">Dynamic Select Option Menu Using Ajax and PHP for Extensions</p>
<center>
<div id="select_box">
<select name="department" id="department" onchange="fetch_select(this.value);">
<option value="">Select Option</option>
<?php
$sql="SELECT Department1 FROM PIC_Approval";
$result=odbc_exec($conn,$sql);
while($row=odbc_fetch_array($result)){
$department=$row['Department1']; ?>
<option value="<?php echo $department;?>"><?php echo $department;?></option>
<?php }
?>
</select>
<select name="ownerid" id="owner_id">
</select>
</div>
</center>
</body>
</html>
fetch_data.php
<?php
include 'conn.php';
if(isset($_POST['get_option']))
{
echo $_POST['get_option'];
$department = $_POST['get_option'];
$sql1="SELECT Owner_I_Employee_ID FROM masterlist1 WHERE Department1='$department'";
$result1=odbc_exec($conn,$sql1);
while($row=odbc_fetch_array($result1))
{
$id=$row['Owner_I_Employee_ID']; ?>
<option value="<?php echo $id;?>"><?php echo $id;?></option>
<?php
}
exit;
}
?>
我不确定请求有什么问题。我按照我在网上找到的教程进行操作。我正在使用 odbc。
【问题讨论】:
-
你不知道哪里出了问题,因为你不是在寻找问题。请使用浏览器中的控制台和网络工具检查错误并调试 Ajax。还可以在 PHP 中启用错误日志记录,以便您可以检测服务器端错误。学习调试。在这种情况下,仅通过查看代码我们无法得知太多信息。
-
@ADyson 对不起,先生,我会努力从我的错误中吸取教训。感谢您的建议。
-
这不是错误,只是很明显你还没有学过。你需要在学习编写代码的同时学习调试,否则你永远无法解决程序中的简单问题。如果您在调试代码后仍然存在问题并且无法自行或通过谷歌搜索解决,请编辑您的问题以包含您找到的信息,然后也许我们可以为您提供更多帮助
-
嗨史蒂夫,是的,阿迪森是对的,你做的大部分事情都很好,但是你的问题中缺少一个特殊的部分......也就是说,错误是什么?社区很难设置与您相同的环境,并且我们可能无法重现您遇到的相同问题。因此,作为一个友好的建议,在提出问题时,除了代码之外,还要添加日志和错误。并欢迎来到社区顺便说一句
-
@WistonCoronell 感谢温斯顿的建议。当我将来在这里发布新问题时,我会牢记在心。干杯!