最近在開發(fā)一個富文本編輯器,考慮到textarea只能輸入文本,所以我用p的contenteditable="true"屬性實現(xiàn)了富文本,可以插入圖片,視頻等。
但是問題來了,在表單頁面:
<form action="test.php" method="post">
<p contenteditable="true" name="zhengwen"></p>
<input type="submit">
</form>
這樣做,p里面的內(nèi)容,根本就無法提交到test.php頁面的,echo $_POST[zhengwen];是沒輸出的。
我懷疑根本就沒有提交過來。
大家知道怎么解決嗎?求表單提交頁面和接收頁面的簡單代碼?。?!
確實是沒提交過去,因為,表單里的提交按鈕,只提交表單元素。而<p contenteditable="true">
并非表單元素。
如果要將<p contenteditable="true">
的信息提交過去,需要自己構(gòu)造POST
的信息提交過去,需要自己構(gòu)造POST
請求,我就以jQuery為例:
$('form').submit(function(e) {
e.preventDefault(); // 攔截HTML的默認表單提交
var content = $('p[name=zhengwen]').html();
$.post('....', {zhengwen: content}, functino(data) {
// 成功回調(diào)
});
});
當然了,jQuery的POST提交還有好多種寫法,比如$.ajax()
等。
PHP端接收時,和平常一樣讀取$_POST
就可以了。