2013-01-02 119 views
0

我有多個URL的MySQL數據庫。 每個網址都顯示在一個iframe中,因此3個網址= 3個iframe。我像這樣展示他們。jQuery - 點擊iFrame的顯示網址

... 
$resu = mysql_fetch_array ($consultation); 
echo "<iframe src='".$resu['URL']."' onload='load(this)' id='iframe'></iframe>"; 
... 

有了這個劇本,我能知道iframe的網址點擊(不完全,除了它不的jsfiddle,但在我的電腦是工作。(http://jsfiddle.net/7UxHv /))。

<script type='text/javascript'> 
$(window).load(function(){ 
    $('iframe#iframe').load(function(){ 
     alert($('#iframe').attr('src')); 
    }); 
}); 
</script> 

但它真的顯示第一個數據庫行,而不是一個點擊。

無論如何顯示與該腳本或其他形式點擊一個這樣做嗎?謝謝。

回答

0

編輯:

注意你生成具有相同ID的多個元素.. ID應該是唯一的。

這可能是爲什麼你只得到第一行工作。


我認爲下面的代碼應該工作:

HTML:

<iframe src='.$resu['URL'].' onload='loadIframe(this)' scrolling='no'></iframe>​ 

JS:

window.loadIframe = function(frame) { 
    alert("Loaded "+$(frame).attr('src')); 
} 
+0

iframe不能有一個確切的網址,這是一個例子。我需要它在OP中。 iframe src ='「。$ resu ['URL']。」,因爲我使用PHP顯示數據庫結果 – frankie3

+0

好的,我將它更改爲從PHP生成的url。 – Iftah

+0

可能是你說的,所有的iframe都有相同的id,但是iframe必須有一個id將它與jquery關聯,那麼我該怎麼辦? – frankie3

0

嘗試......變 'SRC' 到 '數據-SRC' ......和嘗試以下操作...

echo "<iframe data-src='".$resu['URL']."' onload='load(this)' id='iframe'></iframe>"; 

$('#iframe').click(function() { 
    alert($('#iframe').data('src')); 
}); 

也代替使用的onload嘗試使用的onclick()...

可能工作...

+0

我已經嘗試過無數的事情,和我認爲的onclick沒有按沒有工作。現在我會嘗試data-src,我不知道src與xrc有什麼區別) – frankie3

+0

iframe不顯示屬性data-src,它只顯示src。 – frankie3