我有一个使用 PHP & Prototype JS 构建的应用程序。我有两个链接的选择框,它们构成更大表单的一部分。当用户更改第一个选择框中的值时,会触发 Prototype Ajax Updater 请求以获取要在第二个选择框中显示的值列表:
landlordId = $F('landlord_id');
branchId = $F('branch_id');
new Ajax.Updater('landlord_branches_div', baseUrl+"/landlord/getLandlordBranches", {
method:'post', postBody:'landlord_id='+landlordId +'&branch_id='+ branchId,
});
这将返回一个填充到第二个选择框中的 HTML 块,例如(甚至可以看到这是通过 Firebug 返回的内容):
<select name="branch_id" id="branch_id" >
<option value="all" selected="selected">All Branches</option>
<option value="99" selected>HORDEN</option>
</select>
但是,当在上面的 ajax 请求之后提交表单(通过常规表单提交)时,帖子中缺少 branch_id(在第二个选择框中设置)。如果刚刚提交了加载的初始页面而没有在第二个选择框上触发任何 ajax 更新,则它出现在帖子 OK 中。
具有讽刺意味的是,它在 IE 中运行良好,但在 Chrome 或 Firefox 中无法运行。
如果有人能对此有所了解,将不胜感激。
提前致谢。