2

これはアラートボックスの出力ですクラス「mno」のdiv要素をabc.phpからxyz.phpにフェッチしようとしています。

http://pastebin.com/MhAqhZpdには、私が使用しているコードがあります(コード全体ではなく、ajax部分のみ)

URLはスクリプトを指していますが、2番目のアラートボックスには何も表示されず、「NULL」も表示されません。また、console.logは何も表示しません。私はajaxを初めて使用するので、事前にささいな感謝をまとめることができない可能性があります

4

5 に答える 5

4

アクセスするファイルが同じサーバーにある場合は、http: //api.jquery.com/load/を使用します。

$("div").load("abc.php div.mno");
于 2012-08-17T14:29:28.590 に答える
1

jQueryのloadメソッドを使用できます。$ .get()とは異なり、.load()メソッドを使用すると、挿入するリモートドキュメントの一部を指定できます。これは、urlパラメーターの特別な構文で実現されます。文字列に1つ以上のスペース文字が含まれている場合、最初のスペースに続く文字列の部分は、ロードするコンテンツを決定するjQueryセレクターであると見なされます。

$('div').load('abc.php div.mno');
于 2012-08-17T14:32:49.883 に答える
1

多分あなたはこのように行くことができます:(私はあなたの質問が言っていることに固執しています!)

$.get('abc.php',function(data){
    var mnoDivHTML = $(data).find('div.mno').html(); //the html content of .mno div in abc.php
    $('div.yourclass').html(mnoDivHTML); //fill the desired div in the current page
});
于 2012-08-17T14:39:16.477 に答える
1

$.load()非常に柔軟性がないことを気にしない場合は素晴らしいですが、もう少し強力なものが必要な場合は、実際に$.getまたはを使用できます$.post

例:

var data = {'someParam':'someValue'};
$.post('abc.php', data, function(response){
    var myDiv = $('.mno', response); //get class .mno from response text
    alert(myDiv.html());
});

たとえば、検索結果の次のページを取得するために使用している場合、これは非常に便利な場合があるため、次のページにパラメーターを渡す必要があります。

于 2012-08-17T14:40:20.553 に答える
1

別の方法:)load.htmlを、ロードするドキュメントとdivに置き換えるだけです:mypage.php .somediv

<script type="text/javascript">    

$(document).ready(function(){
//var ajax = function(url){
//var url = 'load.html';
//$('.content').load(url);
//}
// Than you call it like THIS: ajax();
//$('.button').click(function(){
//$('.content').load('load.html')
//});
//response contains the text content that was returned from the ajax request
$(".content").load('load.html', function(response, error, xhr) {
if (error == "error") {
var msg = "Sorry but there was an error: ";
$("#error").html(msg + xhr.status + " " + xhr.statusText);


}
});
});
});
</script>
于 2012-08-17T14:43:49.010 に答える