1

ajax の仕組みはよくわかりませんがdiv、ボタンをクリックして Web ページに変更できるチュートリアルを見たことがあります。

divタグ内の属性を読み取ることにより、クリックしたリンクを更新せずにタグにロードする方法はあります<a>か?

私は次のHTMLを持っています:

<table align='center'>
    <tr>
        <td>
            <a href='http://libraryofalexandria.tk/index.php'>Home</a>
        </td>
        <td>
            <a href='http://libraryofalexandria.tk/pdfupload.php'>Book Upload</a>
        </td>
        <td>
            <a href='http://libraryofalexandria.tk/booksearch.php'>Book search</a>
        </td>
    </tr>
</table>
<div id='pageLoad'></div>

</p>

4

3 に答える 3

4

はい、jQuery の.load()メソッドを使用してそれを行うことができます。

次のようになります。

// Catch the click on your a tag
$("a").click(function(){
    // Load the content of the page referenced in the a-tags href
    $("#pageLoad").load($(this).attr("href"));
    // Prevent browsers default behavior to follow the link when clicked
    return false;
});

他のドメインからのデータへのアクセスは、同じオリジン ポリシーによって制限されることに注意してください。のjQueryドキュメントから.load()

ブラウザーのセキュリティ制限により、ほとんどの "Ajax" 要求は同一オリジン ポリシーの対象となります。要求は、別のドメイン、サブドメイン、またはプロトコルからデータを正常に取得できません。

その場合は、CORSまたはJSONPを調べる必要があるかもしれません。

于 2012-09-16T09:45:16.300 に答える
3

クリック イベントをリンクにアタッチし、load()を使用してコンテンツを div にロードできます。

$("a").click(function() {        
    $("#pageLoad").load(this.href);

    return false;
});​

これは、ドメイン間のセキュリティ制限により、リンクが同じドメインにある場合にのみ機能します。詳細については、同一オリジン ポリシーのドキュメントを参照してください。

于 2012-09-16T09:50:05.270 に答える
1

卵を調理する方法はたくさんありますが、この場合は jQuery の Load が役立つようです。

http://api.jquery.com/load/

于 2012-09-16T09:48:00.113 に答える