2012-07-17 135 views
2

我們怎樣才能獲得本內容CONTENTEDITABLE以HTML格式PHP如何獲得價值CONTENTEDITABLE在PHP

例如,我有這樣的代碼,並希望得到它的價值在一個變量在PHP中:

<div contentEditable="true"> type here 
<img src="http://t2.gstatic.com/images?q=tbn:ANd9GcQCze-mfukcuvzKk7Ilj2zQ0CS6PbOkq7ZhRInnNd1Yz3TQzU4e&t=1" /></div> 

因爲我想用它作爲電子郵件的html正文。

Infact我想獲得contentEditable的值並將其保存到一個變量中,然後將該變量用作我的電子郵件的正文。任何想法如何執行這項任務。

+0

爲什麼你不使用表單域而不是一個div? – Pete 2012-07-17 16:20:00

+0

沒有javascript? – 2012-07-17 16:21:57

回答

7

您需要將元素的內容存儲在表單元素中,以便將其提交到您的PHP頁面。

我想你想contenteditable而不是textarea豐富的文字...考慮看看所見即所得的編輯器,如TinyMCE而不是。

如果您仍想堅持使用您當前的方法,您需要一些JS在提交頁面之前將div的值複製到隱藏的表單元素中。

HTML

<div id="emailcontent" contenteditable>asdf</div> 
<form> 
    <input type="text" id="a" name="a"/> 
    <input type="submit" name="submit" id="submit" /> 
</form> 

jQuery

$("#submit").click(function() { 
    $("#a").val($("#emailcontent").html()); 
}); 

DEMO

3

你可以嘗試這樣的事情:

var form = document.createElement("form"); 
form.setAttribute('action','some.php'); 
form.setAttribute('method','POST'); 
form.setAttribute('target','_self'); 
form.setAttribute('enctype','application/x-www-form-urlencoded'); 
form.innerHTML = '<input type="hidden" name="emailData" value="'+ 
        document.getElementById('yourdivid').innerHTML+'" />'; 
form.submit(); 

然後在你的PHP retri前夜POST ED數據:

$data = $_POST['emailData'];