閱讀ziyuang在他的評論中發佈的問題的答案。一旦你讀到,你會意識到你的問題並不合理。當您發出請求時,HTML只是一個由Web服務器提供的很長的字符串,然後該字符串將由您的瀏覽器在全球客戶端解釋。 PHP是一個服務器端腳本語言,用於創建可以提供給客戶端的動態HTML頁面。 JavaScript是一種瀏覽器腳本語言,通常使用客戶端(一般來說)。
要回答你原來的問題,沒有轉換器可以在JavaScript和HTML之間進行轉換,如果有的話沒有任何意義。 JavaScript的要點是提供一種與DOM交互的方式,並提供前端邏輯。
我猜測是你有一些JavaScript UI小部件(JQuery UI之類),它爲你生成了一些圖表。它在瀏覽器中運行時的實際做法是修改DOM(文檔對象模型)。有關DOM的更多信息,請參閱:http://www.w3.org/TR/DOM-Level-2-Core/introduction.html
如果要將該圖表通過電子郵件發送給某個電子郵件地址,您可以執行的操作是獲取創建圖表的DOM節點的內部html。
// where myChart is the html element that contains the chart html
document.getElementById("myChart");
var chart = myChart.innerHTML;
然後,您可以發送該字符串返回到你的PHP腳本,然後可以通過電子郵件發送給你想要誰:你可以做類似如下的東西做在JavaScript中。
所以,你不能轉換到JavaScript的HTML,但你可以捕捉由JavaScript生成的HTML ,並「送」,早作爲參數傳遞給服務器上的PHP腳本:
// Handling for IE
var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');
var url = "http://www.yourdomain.com/php_script.php?chart=" + chart;
xhr.open('GET', url, true); // 'true' makes this call asynchronous
然後創建一個JavaScript回調當你的請求返回:
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status < 400) {
alert("success!");
}
};
希望這是有道理的,乾杯!
來源
2013-12-18 00:41:34
pje
@ziyuang這些都與他的問題有關。 – 2013-12-18 00:15:37
你的JavaScript做什麼? – 2013-12-18 00:16:48
你在這裏使用哪個圖表庫?你知道它是否產生SVG輸出嗎? –