【问题标题】:PHP jQuery mySQL Populating DROPDOWN Fields errorPHP jQuery mySQL 填充 DROPDOWN 字段错误
【发布时间】:2012-04-19 01:34:12
【问题描述】:

我正在尝试从第二个选择中填充第二个下拉列表,但每当我进行更改时,都没有更新。

<script type="text/javascript" src="jquery-1.7.2.js"></script>

<script>
var second_choice = $('#second-choice').val();
$("#first-choice").change(function() {
$("$second-choice").load("findModel.php?choice=" + $("#first-choice").val());
});
</script>

这是相关的 PHP 文件:

<?php
include 'dbc.php';

$choice = mysql_real_escape_string($_GET['choice']);

$query="SELECT * FROM `cars` WHERE `DVLAMake`='$choice'";
$result = mysql_query($query);

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

数据库连接正常。

...

<select id="first-choice">
<option selected value="base">Please Select a Make</option>
<?php 
$sql="SELECT DISTINCT `DVLAMake` FROM `cars`";
$result = mysql_query($sql);
while ($data=mysql_fetch_assoc($result))
{
echo "<option value =\"{$data[DVLAMake]}\" >{$data[DVLAMake]}</option>\n";
} 
?>
</select>

<select id="second-choice">
<option>Please choose from above</option>
</select>
<br />

<input type="submit" style="font-size:14px; padding:3;"value="Submit" size="20" />
</form>

...

有什么原因吗?

【问题讨论】:

  • 您是否检查了生成的 SQL 查询?
  • 试着把你的脚本放在$(function() {})handler中
  • 错字:$second-choice 应该是 #second-choice 证明阅读更多;-)

标签: php jquery mysql drop-down-menu


【解决方案1】:

你这里有一个错字$("$second-choice")

$("#second-choice").load("findModel.php?choice=" + $("#first-choice").val());

编辑 - 你试过了吗

$(function(){
    var second_choice = $('#second-choice').val();
    $("#first-choice").change(function() {
        $("$second-choice").load("findModel.php?choice=" + $("#first-choice").val());
    });
});

【讨论】:

  • @Mombassa 我编辑了我的答案,但是使用 firebug 你看到调用了吗?也许你没有绑定 change 事件,因为你没有使用 ready() 处理程序
猜你喜欢
  • 1970-01-01
  • 2016-03-30
  • 2015-08-15
  • 2013-06-10
  • 2018-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多