PHPとPrototype JSを使用して構築されたアプリがあります。大きなフォームの一部を形成する 2 つのチェーンされた選択ボックスがあります。ユーザーが最初の選択ボックスの値を変更すると、Prototype Ajax Updater リクエストが起動され、2 番目の選択ボックスに表示する値のリストが取得されます。
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,
});
これにより、2 番目の選択ボックスに入力された 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 リクエストの後に (通常のフォーム送信を介して) フォームが送信されると、(2 番目の選択ボックスで設定された) branch_id がポストから欠落します。ロードされた最初のページが 2 番目の選択ボックスで ajax の更新をトリガーせずに送信された場合、ポスト OK に存在します。
皮肉なことに、IE では問題なく動作しますが、たとえば Chrome や Firefox では動作しません。
誰かがこれに光を当てることができれば幸いです。
前もって感謝します。