How to get value contentEditable in PHP

2019-02-26 20:10发布

How we can get the content present in contentEditable in html format in PHP

For example i have this code and want to get its value in a variable in PHP:

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

​ because i want to use this as html body for an email.

Infact i want to get the value of contentEditable and save it into a variable and then use that variable as a body for my email. Any idea how to perform this task.

3条回答
来,给爷笑一个
2楼-- · 2019-02-26 20:40

You'll need to store the contents of the element in a form element so it can be submitted to your PHP page.

I assume you want contenteditable instead of textarea for rich text... consider taking a look at WYSIWYG editors like TinyMCE instead.

If you still want to stick with your current method, you'll need some JS to copy the value of the div into a hidden form element before the page gets submitted.

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楼-- · 2019-02-26 20:43

If you want to use PHP maybe you can try to use php DomDocument this is some example maybe same with want you want

How can I get a div content in php

How to get a div via PHP?

or you can use javascript and jquery to do that

查看更多
Anthone
4楼-- · 2019-02-26 20:44

You can try something like this:

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();

Then in your php retrieve POSTed data:

$data = $_POST['emailData'];
查看更多
登录 后发表回答