javascript で POST する(3) – FireFox 対応
以前、JavaScript で POST する方法を記事にしましたが、FireFox だとうまく行きませんでした。
いろいろ試してみると、XMLHttpRequest で send が完了するまで待ってから reload しないとうまく動かないようです。JavaScript の定義部分を以下のように、イベントハンドラを使い、send が完了した後で reload するようにすれば、FireFox でもうまく動くようになりました。
<script> function post() { xhr = new XMLHttpRequest(); xhr.open('POST', '#', true); xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); xhr.onreadystatechange = function () { if(xhr.readyState === XMLHttpRequest.DONE) { location.reload(true); } } var request = "age=18"; xhr.send(request); } </script>
この方法であれば、Chromium でも FireFox でも問題ないようです。テストページ も更新しました。
ディスカッション
コメント一覧
まだ、コメントがありません