2008-11-28 60 views
0

我有一個PHP頁面,顯示MySQL數據庫中的行作爲表。其中一個字段包含HTML標記,並且我希望這行可點擊,並且html將在新的彈出窗口中打開。什麼是最好的方式來做到這一點,有沒有辦法做到這一點,而無需將html寫入文件?從HTML創建一個popupwindow,而不是一個文件

編輯:這個php頁面實際上是一個ajax應用程序的一部分,所以這不是一個問題。我不想使用jquery,因爲我不得不重寫應用程序。

編輯:

我又嘗試過這種使用下面的例子,都失敗了。我知道我的腳本標記是錯誤的,但我現在只是迴應row2,所以我認爲我的邏輯在它到達javascript之前是錯誤的。

$sql="SELECT * FROM Auctions WHERE ARTICLE_NO ='$pk'"; 
$sql2="SELECT ARTICLE_DESC FROM Auctions WHERE ARTICLE_NO ='$pk'"; 
$htmlset = mysql_query($sql2); 
$row2 = mysql_fetch_array($htmlset); 
echo $row2; 
/*echo '<script> child1 = window.open ("about:blank") 
child1.document.write("$row2['ARTICLE_DESC']"); 
child1.document.close()*/ 

回答

4
child1 = window.open ("about:blank") 
child1.document.write("Moo!"); 
child1.document.close() 
+0

你是說我可以代替「Moo!」與數據庫字段變量? – 2008-11-28 14:27:38

0

如果你不需要一個瀏覽器窗口(這個建議涉及到CSS模式對話框),你可能要考慮的「收藏夾」的變化之一。

Thickbox可用於將內嵌內容從頁面加載到模態窗口中。該鏈接提供了有關如何實現內聯內容以及其他變體的演示/詳細信息。

0

我會建議使用像jQuery這樣的Javascript庫,因爲它簡化了這種類型的代碼並且是跨瀏覽器兼容的。

$(document).ready(function() { 

$('#clicker').click(function() { 
    myWindow=window.open('','','width=200,height=100') 
    myWindow.document.write($("#content")); 
    return false; 
}); 

}); 

的HTML將是:

<table> 
    <tr> 
     <td><div id="clicker">Click Here</div></td> 
     <td><div id="content">This is the content</div></td> 
    </tr> 
</table> 
0

如果大量的數據,值得我們思考的是通過AJAX了加載它看作拯救選擇它,並把它發送給用戶的每一個頁面加載時 - 對於像jquery這樣的東西,這已經很容易了。

相關問題