2011-01-31 62 views
2

是否可以將整個html頁面發佈到服務器(假定服務器可以處理它)?Javascript:如何發佈整個頁面?

我正在嘗試實施以下設置。用戶進行了一些更改(用戶選擇一些文本,並將該文本包裝在<範圍內的>標籤與某些類)html並提交頁面。服務器從頁面中提取一些相關的更改。 這可能嗎?或者我需要設計一些更復雜的方案?

回答

2

這是很有可能的 - document.getElementsByTagName('html')[0].innerHTML應該爲您提供頁面的HTML,並且XMLHttpRequest(AJAX)允許POST發送數據。將這兩者結合起來應該能讓你獲得基本的功能。

2

那麼你需要做一些JavaScript魔術做到這一點。

通常只提供輸入元素。

在你的情況下,你需要使用Javascript來讀取DOM並將其轉換爲HTML(document.body.innerHTML might work),然後使用Ajax調用服務器或將數據存儲在文本框中並從腳本中提交表單。

但問題是,要做這個改變,在一個span中包裝一個選擇,你已經有一個腳本來做這件事,你可以發佈一個動作,例如父元素+選擇開始和選擇結束,或者可能整個元素中的文本到服務器並讓服務器複製操作?

2

你想做什麼是可能的,但恕我直言,你需要採取不同的方法。與其試圖將整個頁面發回,最好是在HTML表單中呈現頁面的所有內容。每個元素都可以使用CSS進行樣式設計,因此它們看起來不像表單字段,但仍可編輯。你也可以將靜態HTML中的區域切換到使用Javascript尋找元素的常規形式。

使用AJAX技術,您可以自動發佈模糊更改,而不必在每次更改時讓用戶「保存」。

相關問題