无法使用 Javascript AJAX 从 Summernote textarea 获取价值发送帖子数据
Posted
技术标签:
【中文标题】无法使用 Javascript AJAX 从 Summernote textarea 获取价值发送帖子数据【英文标题】:Can't get value from Summernote textarea using Javascript AJAX send post data 【发布时间】:2018-07-02 02:33:48 【问题描述】:我一直在检查summernote API,那里有我的代码
<form id="mail">
<input type="text" id="email">
<textarea id="summernote"></textarea>
<input type="submit">
</form>
$('#summernote').summernote(
placeholder: 'your Message',
tabsize: 2,
height: 300
);
$('document').ready(function()
var messageData = $('#summernote').summernote('code');
var email = $('#email').val();
$(function()
$('#mail').submit(function(event)
event.preventDefault();
$.ajax(
url: 'sendmail.php',
type: 'post',
data:
'send_mail': 1,
'to': email,
'message': messageData,
,
success: function(response)
if (response == 'success')
//my success response
else if (response == 'error')
//my error response
);
);
);
);
我的问题是消息已成功发送,但我没有得到那个文本区域的值,只是一封空的电子邮件。请帮忙。
注意:我正在使用 phpMailer 发送电子邮件。
【问题讨论】:
有些事情要检查是您的summernote
初始化超出$(document).ready()..
;您将$(function() ..
嵌套在$(document).ready..
中,这不是必需的。所以删除它。并将您的 summernote
初始化代码添加到 $(document).ready..
好的,我试试。谢谢你的回答。
哦,谢谢你成功了!非常感谢先生!
【参考方案1】:
修改代码如下:
-
在 ready 函数中初始化“summernote”。
在邮件提交事件中获取 Summer note 值
代码如下:
$('document').ready(function()
$('#summernote').summernote(
placeholder: 'your Message',
tabsize: 2,
height: 300
);
$(function()
$('#mail').submit(function(event)
var messageData = $('#summernote').summernote('code');
var email = $('#email').val();
event.preventDefault();
$.ajax(
url: 'sendmail.php',
type: 'post',
data:
'send_mail' : 1,
'to' : email,
'message' : messageData,
,
success: function(response)
if(response == 'success')
//my success response
else if (response == 'error')
//my error response
);
);
);
);
【讨论】:
【参考方案2】:var paragraph = document.getElementsByClassName("note-editable card-block")[0].setAttribute("id","paragraph");
$.ajax(
type: 'POST',
url: 'post.php',
data: "summernote": $('#summernote').html(),
success: function(response)
$("#result").text(response);
$("#result").attr("class","text-success");
,
error: function( jqXhr, textStatus, errorThrown )
console.log( errorThrown );
$("#result").text("good");
$("#result").attr("class","text-success");
);
【讨论】:
以上是关于无法使用 Javascript AJAX 从 Summernote textarea 获取价值发送帖子数据的主要内容,如果未能解决你的问题,请参考以下文章
Rails 4:部分渲染后无法使用javascript(使用ajax)
使用触发 javascript 验证的 POST 表单和 AJAX 登录到 PHP 文件。无法将数据存储到 PHP
使用 javascript 没有 jQuery 的简单 ajax 表单