ホームページ  >  記事  >  ウェブフロントエンド  >  ajaxを使ってXMLHttpRequestオブジェクトを作成する方法_基礎知識

ajaxを使ってXMLHttpRequestオブジェクトを作成する方法_基礎知識

WBOY
WBOYオリジナル
2016-05-16 17:47:03969ブラウズ

オブジェクトを作成するたびにこれほど複雑にする必要がありますか?次のコード:
JScript コード:
"testAjax.htm" ファイル:

コードをコピー コードは次のとおりです




{
// Firefox、Opera 8.0、Safari
xmlHttp=new XMLHttpRequest(); }
catch (e)
エクスプローラー
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
xmlHttp =new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("お使いのブラウザは AJAX をサポートしていません!");
}
}
}
}


ユーザー:
時間:


まず、XMLHttpRequest オブジェクトを保持する xmlHttp 変数を宣言します。
次に、XMLHttp=new XMLHttpRequest() を使用してこのオブジェクトを作成します。このステートメントは、Firefox、Opera、Safari ブラウザーに固有のものです。これが失敗した場合は、Internet Explorer 6.0 の場合は xmlHttp=new ActiveXObject("Msxml2.XMLHTTP") を試し、これも失敗した場合は、Internet Explorer 5.5 の場合は xmlHttp=new ActiveXObject("Microsoft.XMLHTTP") を試してください。

これら 3 つの方法のいずれも機能しない場合、ユーザーは古いブラウザを使用しているため、ブラウザが AJAX をサポートしていないことを示すプロンプトが表示されます。

この関数の定義を別の js ファイルとして直接保存し、AJAX を使用する必要があるページでこのファイルを参照することができます。
詳細は以下のとおりです:
JScript コード:



コードをコピーします


コードは次のとおりです:


function CreateHTTPObject()
{
var xmlhttp; xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e)
{
xmlhttp = false ;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='未定義')
{
try
{
xmlhttp = new XMLHttpRequest(); }
catch (e)
{
xmlhttp=false;
}
}
if (!xmlhttp && window.createRequest)
{
try
{
xmlhttp = window.createRequest();
}
catch (e)
{
}
}
return xmlhttp; >

} 以下のように、上記の関数を定義し、呼び出し時にインスタンスを作成します。
JScript コード:




コードをコピー


コードは次のとおりです:


var xmlHttp = CreateHTTPObject();
if (!xmlHttp)
{
return; object
}
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = function(){HandleRequest(xmlHttp, "要素 ID")}; null); コードをコピーします


コードは次のとおりです:

$(document).ready(function(){
$("#userpass").blur(function(){
varpassword=$("#userpass").val( );
var name=$("#username").val();
if(password==""||password==null){
$("#pass").html ("パスワードを入力してください! ");
b=false
}else if(!/^[a-zA-Z0-9_ ] {6,16}$/.test(password)){
$("#pass").html("入力形式が正しくありません。パスワードは次のとおりです。少なくとも 6 桁の数字または文字");
b=false;
}else{
$.get("LoginAjaxPassword",{"userpass":encodeURI(encodeURI(password)),"ユーザー名": encodeURI(encodeURI(name))},function(response){
$("#pass").html(response);
if(response=="" "√" ""){
b=true;
}
});
}
return b;
});
$("#login-submit").click(function(){
var autologin=document.getElementById("autologin").checked;
if(a&&b){
//if ($("#autologin").attr("checked")==true){
if(autologin==true){
//${"#login-user-form"} .attr( "action","AutoLogin");
//$("#login-user-form").submit();
document.form.action="AutoLogin"; .form.submit();
}else{
//${"#ログインユーザーフォーム"}.attr("アクション","ログイン");ログインユーザー -form").submit();
document.form.action="ログイン";
document.form.submit();
}
} else{}
});
});
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。