[英]Ajax for incorporated in the same div
我有一個頁面( index.php
),其中包含一個鏈接,其鏈接為id="t1"
和一個div id="container"
。
<a id="t1" title="Users" href="utenti.php">Users</a>
<div id="container">
<!--Where does the contained-->
</div>
當我單擊鏈接時,我得到一個內置的外部頁面( utenti.php)
這是Ajax的代碼:
$(document).ready(function(){
$("#t1").click(function(){
//$("#container").hide();
$("#container").load($(this).attr("href"), function(){
$("#container").show();
event.preventDefault();
});
return false;
});
});
到目前為止,一切都很好,但是如果我單擊包含的頁面中的鏈接(utenti.php),則該頁面未包含在同一div中,而是以直接方式打開。
我試圖在文件.JS中放入代碼Ajax,以識別轉換為以下內容的鏈接的ID:
$(document).ready(function(){
$("#t1").click(function(){
//$("#container").hide();
$("#container").load($(this).attr("href"), function(){
$("#container").show();
event.preventDefault();
});
return false;
});
$("#click").click(function(){
//$("#container").hide();
$("#container").load($(this).attr("href"), function(){
$("#container").show();
event.preventDefault();
});
return false;
});
});
凡#click
是id
包含在頁面中的鏈接的Utenti.php
,但即便如此,我也不在div納入頁。
我也嘗試直接在頁面utenti.php
包含該腳本頁面,但我認識到第一個鏈接(很好),但其他每個人都做!(不是所有其他鏈接!)
如果我理解正確,那么該系統實際上不包括PHP的經典頁面。
他還給他提供了已經包含在索引中的值,這更像是一種可視化,只是我不知道如何傳遞主頁index.php
內utenti.php中包含的鏈接的值。
如果希望將在div中打開的頁面上的鏈接也定位到div,則可以在div本身上嘗試委派的單擊處理程序。
$(document).ready(function () {
$("#t1").click(openLinksInDiv);
$("#container").on("click", "a", openLinksInDiv);
function openLinksInDiv(event) {
//$("#container").hide();
$("#container").load($(this).attr("href"), function () {
$("#container").show();
});
event.preventDefault();
}
});
演示: http : //jsfiddle.net/AN56C/
或者,如果您要在該div中打開頁面上的所有鏈接,請使用:
$(document).on("click", "a", openLinksInDiv);
請注意,通過Ajax加載頁面不適用於來自外部域的任何頁面,但適用於來自您自己域的頁面。
對於iframe而不是div,這似乎是一個完美的案例,在這種情況下,您可以鏈接到外部域。
它應該是
$(document).on("click","#t1",function(e){
e.preventDefault();
var href = $(this).attr("href");
$("#container").load(href);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.