2011-12-08 49 views
1

所以我想要做的事情似乎非常基本,但是,我一直在研究這個問題的解決方案超過6個小時,我根本無法想到其他任何東西。這裏的問題:讓我的JavaScript文本編輯器提交

我正在實施基於JavaScript的文本編輯器名爲「NicEdit」到我的網站,具體而言,我設置它基於this示例。問題在於此示例使用"<div ></div>"代替"<textfield></textfield>"而不是。我一直在尋找如何使用PHP的POST方法提交一個基於div的文本框,但是我沒有任何線索。

我也嘗試過使用其他編輯器,但我一直在遇到糟糕的文檔和障礙(每個人都有困難?)。此外,NicEdit與我正在嘗試實現的東西距離最近,所以我希望堅持下去。

P.S.我現在通過xampp通過localhost運行我的站點。我所有的其他網頁和JavaScript代碼都正常運行。

感謝您的幫助,

〜Jakobp

回答

2

「我一直在尋找如何提交一個基於div的文本框像這樣PHP的POST方法有一段時間了」

其一,PHP沒有一個POST方法。 HTTP實現POST。一旦PHP發送到服務器,PHP只會讓您訪問HTTP POST數據(通過$ _POST)。

回到你的問題...讓我們想想做什麼需要做的工作。以下是步驟:

  1. 我們需要訪問可編輯div的文本內容。
  2. 我們需要通過HTTP post將這些數據提交給一個php文件,該文件可以被 接受。

NicEdit API documentation爲如何通過ajax保存文本提供參考here

對於這個答案的目的,我們只是做舊的方式,沒有ajax。現在,文檔還說有一個「.getContent()」方法可用,它將返回作爲編輯器顯示的div的HTML內容。因此,您可以執行以下操作:

var myNicEditor = new nicEditor(); 
var txt = myNicEditor.getContent(); // gets editable content from div 

現在我們只需將該文本提交給我們創建的php文件。我不會介紹如何創建php文件或如何處理其中的$ _POST數據,因爲我無法爲您編寫代碼。

您可以使用javascript將新創建的txt變量存儲在頁面上的隱藏表單字段中,然後提交該表單,但那樣做很愚蠢。相反,check out this SO answer for how to post data to a url without a form in javascript

+0

正是我在找什麼,我不知道爲什麼我找不到那個文檔。謝謝一堆! – jakobpb

+0

我很擅長谷歌:) – rdlowrey

+0

那麼你打破了1000代表谷歌,所以grats! – jakobpb

-2

嘗試使用一個實際的 「文本」 的編輯,而不是一個所見即所得的編輯器。