从下拉列表中填充下拉列表

时间:2013-07-23 16:40:16

标签: php jquery html sql

编辑:第一篇文章现在包含工作代码,并且已经编辑了问题。

我正在制作一个从SQL查询填充DDL的网页。选择后,它会执行第二个SQL查询来填充第二个DDL。该脚本正在触发,并且没有引发错误,但第二个DDL没有填充。

我的代码

<Head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>$(function() { 
                $("#exchangenameselect").change(function() {
                $("#jobnoselect").load("getter.php?choice=" + $("#exchangenameselect").val());
                });
            });
</Script>
</Head>
<body>
<!-- Perex -->
<div id="perex" class="box">
<?php $conn = mysqli_connect('host', 'user', 'pass', 'database')
or die ('Cannot connect to db');?>

Exchange:
<p><select id="exchangenameselect">
<option>Choose</option>

<?php 
$result = $conn->query("select distinct Exchange from MasterJobTable");
while ($row = $result->fetch_assoc()) {
unset($exchange);
$exchange = $row['Exchange'];
echo '<option>'.$exchange.'</option>';
echo "\r\n";
}
?>
</select></p>

Job Number:
<p><select id="jobnoselect">
<option>Choose</option>
</select></p>

</div> <!-- /perex -->
</body>

来自getter.php的代码是

<?php

$username = "user";
$password = "passs";
$hostname = "host";

$dbhandle = mysql_connect($hostname, $username, $password) or die("Unable to connect to MySQL");
$selected = mysql_select_db("database", $dbhandle) or die("Could not select examples");
$choice = mysql_real_escape_string($_GET['choice']);

$query = "SELECT * FROM MasterJobTable WHERE Exchange='$choice'";

$result = mysql_query($query);

while ($row = mysql_fetch_array($result)) {
    echo "<option>" . $row['JobNo'] . "</option>";
}
?>

Getter.php正在返回数据,jQuery正在做一些事情,可以在网站http://btstats.000webhost.com/index2.html看到,getter可以直接访问http://btstats.host22.com/getter.php?=York

有没有人可能会探究为什么这不起作用?

2 个答案:

答案 0 :(得分:1)

您没有在

中设置值
echo <option value="">'.$exchange.'</option>';

但你在

中用ajax查询它
$("#jobnoselect").load("getter.php?choice=" + $("#exchangenameselect").val());

试试这个:

echo <option value="'.$exchange.'">'.$exchange.'</option>';

答案 1 :(得分:0)

错误导致代码错误而不会产生错误......我自己的错误