-5

次のコードを使用して、ガジェットで Google を取得しています。

<html>
<head>
<title>Browser</title>
</head>
<body onload= "getListCollection()" style="width:900px; height:900px;" >
<div id="listAttributes" style="width:400px; height:400px;" ></div>
<script>

function getListCollection() {
    var url = "https://www.google.co.uk"  
    xmlhttp = new XMLHttpRequest();
    xmlhttp.open('GET',url,true, 'user', 'password');
    xmlhttp.onreadystatechange = function()
    {
        if(xmlhttp.readyState == 4);
        {
            document.getElementById("listAttributes").innerHTML = xmlhttp.responseText
        }
    }
    xmlhttp.send(null);
}
</script>
</body>
</html>

$ajax を使用して同じことを行うにはどうすればよいでしょうか。

さまざまな例を見ましたが、この状況にどのように適合するかわかりません。または、素敵な $ajax チュートリアルを投稿していただければ幸いです。

これに変更すると、機能しません。

<html>
<head>
<title>Browser</title>
</head>
<body onload= "getListCollection()" style="width:900px; height:900px;" >
<div id="listAttributes" style="width:400px; height:400px;" ></div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js">

$.ajax({
    url : 'https://www.google.co.uk',
    type : 'GET',
    success : function(data){
        $('#listAttributes').html(data);
    }
});
</script>
</body>
</html>

ページに何も表示されません。

4

4 に答える 4

6

コードの jQuery バージョンは次のとおりです。

$.ajax({
    url : 'https://www.google.co.uk', //cross-domain? this won't work
    username : 'user',
    password : 'password',
    type : 'GET', //default is GET, but i put it here to clarify
    success : function(data){
        $('#listAttributes').html(data);
    }
});

詳細と設定については、jQuery.ajax()ドキュメントをお読みください

于 2012-05-18T14:28:03.183 に答える
2

そんな感じ:

$.ajax({
    url : "https://www.google.co.uk",
    type : "get",
    username : "user",
    password : "password",
    success : function(data) {
        document.getElementById("listAttributes").innerHTML = data;
    }
});

ただし、外部リソース (つまり、ドメインではない) にアクセスしようとしているため、コードはおそらく機能しません。

詳細については、 JQuery Ajax のドキュメントを確認してください。

于 2012-05-18T14:28:20.293 に答える
2
$.ajax({
   url: url,
   username: 'user',
   password: 'password'
}).done(function (responseText) {
   document.getElementById('listAttributes').innerHTML = responseText;
   //or
   $("#listAttributes").html(responseText);
});

デフォルトで.ajaxは GET メソッドを使用し、非同期になるため、それらの設定は省略しました。ユーザー名/パスワードが必要ない場合は、$.get().

于 2012-05-18T14:29:21.820 に答える
2

これは、純粋な JavaScript バージョンよりも非常にシンプルで短いものです。

function getListCollection() {
    $.ajax({
        url: "https://www.google.co.uk",
        username: "user",
        password: "password",
        success: function(data){
            $('listAttributes').html(data);
        }
    });
}

リクエストは、サイトがクロスドメイン オリジンをサポートしている場合にのみ受け入れられます。ここで jQuery.ajax()のドキュメントを確認してください。

于 2012-05-18T14:37:41.157 に答える