如何使用来自ajax加载函数的数据?

时间:2012-12-20 21:10:26

标签: ajax jquery

假设我在下面有以下代码。根据从下拉列表中选择的值,它会显示与值关联的复选框。这部分工作得很好,除非我提交表单,否则不会加载来自ajax调用(process.php)的数据。我在视图源中看不到它,因此我无法将它们包含在<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中不会显示任何内容。

0 个答案:

没有答案