Récemment, je développe un éditeur de texte enrichi, étant donné que textarea ne peut saisir que du texte, j'ai utilisé l'attribut contenteditable="true" de p pour implémenter du texte riche, qui peut insérer des images, des vidéos, etc.
Mais voici le problème, sur la page du formulaire?:
<form action="test.php" method="post">
<p contenteditable="true" name="zhengwen"></p>
<input type="submit">
</form>
Si vous faites cela, le contenu de p ne peut pas du tout être soumis à la page test.php et echo $_POST[zhengwen];
Je doute qu'il ait été soumis.
Est-ce que quelqu'un sait comment le résoudre ? Vous recherchez des codes simples pour la page de soumission de formulaire et la page de réception?! ! !
Il n'est en effet pas soumis car le bouton Soumettre du formulaire ne soumet que les éléments du formulaire. Et <p contenteditable="true">
n'est pas un élément de formulaire.
Si vous souhaitez soumettre les informations <p contenteditable="true">
的信息提交過去,需要自己構(gòu)造POST
, vous devez créer vous-même une requête POST
. J'utiliserai jQuery comme exemple?:
$('form').submit(function(e) {
e.preventDefault(); // 攔截HTML的默認(rèn)表單提交
var content = $('p[name=zhengwen]').html();
$.post('....', {zhengwen: content}, functino(data) {
// 成功回調(diào)
});
});
Bien s?r, il existe de nombreuses fa?ons d'écrire la soumission POST de jQuery, comme $.ajax()
etc.
Lors de la réception c?té PHP, lisez-le simplement comme d'habitude$_POST
.
1、富文本編輯器可以用百度的UEditor
2、正如樓上所說,你可以用ajax來提交,但是這個有一點不好,如果有一百個輸入框,難道提交一百個鍵值對?
3、所以你可以用js的formData對象,圖片也可以發(fā)送過去,代碼如下
$("#submit").click(function() {
var x = new FormData(document.getElementById("frm"));//構(gòu)造方法里面必須是dom對象
x.append('abc', 123);//追加你的數(shù)據(jù)
$.ajax({
url: '1.php',
type: 'POST',
data: x,
processData: false, // 告訴jQuery不要去處理發(fā)送的數(shù)據(jù)
contentType: false // 告訴jQuery不要去設(shè)置Content-Type請求頭
})
.success(function(data) {
//代碼
});
});
4、也可以用serializeArray函數(shù)模擬上面的formData對象,代碼如下
var allDatas = $("form").serializeArray();
allDatas.push({name:'data',value: JSON.stringify(你的數(shù)據(jù)對象)});//追加的格式必須是name,value形式,打印allDatas的格式就知道了?。?!
$.post(url,allDatas,function(json){//代碼
});