コンピュータを便利に使う tips などをメモ
非同期JavaScript の内部事情を知る。
異なる種類のブラウザにリクエストを送信する方法、処理状態とステータスコードをマスターすることに挑戦する。
その他にダイナミックHTML(dhtml)のテクニックをいくつか習得する。
var request = null;
try {
request = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
request = null;
}
}
}
if (request == null)
alert("Error creating request object!");
設計図を描こう
イベントハンドラのまとめ
onChange:onChangeイベントは、フォームにあるフィールドの値が変更されるたびにじっこうされます。
実効される時:
- フィールドの値が変更されたとき
onFocus:onFocusに関連付けられた JavaScriptは、フィールドまたはその他のページコンポーネントがフォーカスされたときに実効されます。
実効される時:
- フィールドがフォーカスされたとき
onBlur:onBlurはユーザがフィールドから別の場所に移動したときに、関連付けられたコードを実効します。
実効される時:
- フィールドからフォーカスがはずれたとき
ページのロード時に、HTMLドキュメント内の最初のフォーム( forms[0] ) にある値がクリアされる。
DOMを使って電話番号を取得する。
var phone = document.getElementByID("phone").value;
escape関数を用いて、日本語などそのままURLに渡すと問題が起こる可能性のある文字をエンコードする。
unescape関数は、エンコードされた文字列をデコードし、元の文字に戻す。
リクエストURLにダミーの引数を加える。
var url ="hogehoge.php";
url = url + "?dumy=" + new Date().getTime();
requestoオブジェクトには、statusというプロパティがあり、ここに格納された値を見ることによって、エラーがおきているかどうかを確認することが出来る。
if ( request.readyState == 4) {
if ( request.status == 200 ) { // 処理が問題なく完了したときのステータスコード 200
処理
} else
alert("エラー!ステータスコード:" + request.status);
}
}