假设我在下面有以下代码。根据他们从下拉列表中选择的值,它会显示与该值关联的复选框。这部分工作得很好,除了当我提交表单时,process.php
没有加载来自 ajax 调用 () 的数据。我没有在视图源中看到它,因此我无法将它们包含在其中<form></form>
javascript
$(document).ready(function() {
$('#dropdown').change( function() {
$('#output').load('/process.php',{dropdown: $(this).val()});
});
});
html
<form method="post" id="myform">
<select id="dropdown" name="dropdown">
<option value="QU">QU</option>
<option value="QF">QF</option>
<option value="QC">QC</option>
</select>
<div id="output"></div>
<button type="submit">Continue</button>
</form>
顺便说一句,我也尝试了以下方法。
$(document).ready(function() {
$('#dropdown').live("change", function() {
$('#output').load('/process.php',{dropdown: $(this).val()});
});
});
process.php 的片段
结果显示得很好,除了我不能在表单提交中使用复选框值。
foreach($new as $r) {
$svn_tag = rtrim($r['current_tag'], '/');
echo "<tr>";
echo "<td><label class='checkbox'><input name='tag[{$r['name']}]' type='checkbox' value='{$r['name']}' /></label></td>";
echo "<td class='primary'>". ucfirst($r['name']) . "</td>";
echo "<td class='primary'><input type='text' name='revision[{$r['name']}]' value='{$svn_tag}'></td>";
echo "<td><input type='hidden' name='docroot[{$r['name']}]' value='{$r['docroot']}'></td>";
echo "</tr>";
}
让我们让这更容易。我改为process.php
只显示以下内容。请记住,它显示得很好,只是在表单提交期间不包含它。
<input type="checkbox" name="tag" value="test">
我选中该框,点击继续按钮,但它失败了。意思是, 的值tag
不会传递给下一个方法。基本上,如果您查看源代码,则output
div 中不会显示任何内容。