我对这段代码很困惑,我真的不明白为什么它不应该工作,我不知道我之前运行的一些 JavaScript 代码是否会产生干扰?
仅显示代码的相关部分
当选择另一个下拉列表时,带有 JavaScript 的第一部分会更新页面,并放置在我遇到的代码之前: `
<script type="text/JavaScript">
function changeDropDown(){
var elLocation = document.getElementById('form_location_id');
var location = elLocation.options[elLocation.selectedIndex].value;
document.getElementById("form1").action = "choose.php?id=" + location;
document.getElementById("form1").submit();
}
</script>
<form id="form1" name="form1" method="post">
<select size="1" name="form_location_id" id="form_location_id" onchange='changeDropDown(this);'>
<?php
if ($chosen_id == "1") { ?>
<option value = "1" selected><?php echo "dropdown text" ?></option>
<? } else { ?>
<option value = "1"><?php echo "dropdown text" ?></option>
<?php } ?>
</select>
</form>
<form method="post" action="update.php">
<select size="1" id="choice" name="value">
<?php
while($row = mysqli_fetch_array($query)) {
$id = $row['id'];
$number = $row['number'];
>?
<option value = "<?php echo ($id) ?>"><?php echo "ID=" . ($id) . " - #" . ($number) . ""?></option>
<?php
}
mysqli_close($db_conn);
?>
</select>
<input name="submit" type="submit" value="Submit">
</form>
<小时/>
更新.php:
<?php
if (isset($_POST['submit'])) {
$chosen_id = $_POST['id'];
}
?>
`
我只发布了处理选择选项和发布部分的代码...
为什么$chosen_id变量总是0? while 循环起作用,并填充变量,因为这是使用选项行内的 echo 命令进行测试的
非常感谢任何帮助...
最佳答案
$_POST['id']
和<select size="1" id="choice" name="value">
使用$_POST['value']
关于javascript - php - 选择选项值未传递到帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33152910/