我想知道如何提交两个没有提交按钮的下拉菜单。我想在选择第一个下拉菜单时填充第二个下拉菜单,然后能够回显第二个下拉菜单的选择。第二个下拉菜单的数据是从mySQL数据库获得的。我在页面上使用了两个表单,每个下拉菜单都有一个表单。
<form method="post" id="typeForm" name="typeForm" action="">
<select name="filterType" onchange="document.getElementById('typeForm').submit()">
<option <?php if ($_POST['filterType'] == 'none') print 'selected '; ?> value="none">Filter by...</option>
<option <?php if ($_POST['filterType'] == 'employee') print 'selected '; ?> value="employee">Employee</option>
<option <?php if ($_POST['filterType'] == 'taskName') print 'selected '; ?> value="taskName">Task</option>
</select>
<noscript><input type="submit" value="Submit"/></noscript>
</form>
<form method="post" id="categoryForm" name="typeForm" action="">
<select name="filterCategory" onchange="document.getElementById('categoryForm').submit()">
<option <?php if ($_POST['filterCategory'] == 'none') print 'selected '; ?> value="none"></option>
<?
$count2 = 0;
echo $rowsAffected2;
while ($count2<$rowsAffected2) {
echo "<option value='$filterName[$count2]'>$filterName[$count2]</option>";
$count2 = $count2 + 1;
}
?>
</select>
<noscript><input type="submit" value="Submit"/></noscript>
</form>
我可以毫无问题地提交第一张表格。它成功地将值检索到第二个下拉菜单中。但是,当从第二个菜单中选择一个值时,页面将刷新,并且我将留下两个未选择的下拉菜单。我尝试回显$ _POST ['filterCategory']但没有得到结果。我尝试使用onchange =“this.form.submit();”在两种形式中,我仍然得到相同的结果。有没有办法在不使用AJAX,JQuery或任何复杂的Javascript脚本的情况下执行此操作?我完全用PHP来完成这个。
我想避免第二次刷新,但仍然可以从第二次选择中收集$ _POST ['']数据。
答案 0 :(得分:1)
对两个选择使用相同的表单