好的 – 再试一次.
我有一个数据库中的罐头电子邮件列表. “谢谢你成为会员”,“谢谢你的购买它的方式”这样的东西.我使用引导模态来编辑这些电子邮件.当我点击编辑按钮时,模态下拉,并填充数据库中的数据;电子邮件名称,主题,正文.我使用Passing data to a bootstrap modal来完成这个.工作很棒现在我用summernote作为我的富文本编辑器.
这是我的textarea显示未编辑的数据
<textarea class="summernote input-block-level" id="content" name="content" rows="18"></textarea>
类夏天是如何将数据导向到输出文本区域,以便可以对其进行编辑.一旦数据被编辑,我点击提交,数据应该被拉到JavaScript与下面的代码.
$(document).ready(function()
{
$('button[id=editEmail]').on('click',function()
{
var $email_edbody_array = $('textarea[name="content"]').html($('#summernote').code());
var $email_edbody = $email_edbody_array.html();
console.log("edited email" + $email_edbody);
有趣的部分是,如果夏季文本区域是空白的,那么这样做很好 – 如果我正在创建一个新的电子邮件而不是编辑一个.
console.log应该输出编辑的电子邮件正文,但不会.它输出原始的电子邮件正文.我不知道为什么
我没有把编辑的电子邮件转到我的JavaScript中.以下是我认为这个问题重要的代码的主要部分.
此部分是页面的输出,编辑按钮的数据重定向.
<?PHP while ($daTarow_emails = pg_fetch_assoc($results_emails))
{
echo "
<tr>
<td>".$daTarow_emails['internal_name']."</td>
<td>".$daTarow_emails['email_subject']."</td>
<td>".$daTarow_emails['type']."</td>
<td>
<span class='btn btn-info btn-small open-editEmailModal' data-toggle='modal'
href='#editEmail' data-inm='".$daTarow_emails['internal_name']."'
data-es='".$daTarow_emails['email_subject']."'
data-bdy='".$daTarow_emails['email_body']."'
data-ty=".$daTarow_emails['type']."
data-ces=".$daTarow_emails['canned_email_sid'].">
<i class='icon-edit icon-white'></i> Edit</span>
<span class='btn btn-danger btn-small open-delEmailModal' data-toggle='modal'href='#deleteWarning' data-ces=".$daTarow_emails['canned_email_sid'].">
<i class='icon-remove icon-white'></i> Delete</span>
</td>
</tr>";
}
?>
下一部分是将数据重定向到模态的jquery. .note-editable是什么重定向电子邮件正文.
<script>
$(document).on("click",".open-editEmailModal",function()
{
var internalName = $(this).data('inm');
var emailSubject = $(this).data('es');
var emailBody = $(this).data('bdy');
var type = $(this).data('ty');
var cannedEmSid = $(this).data('ces');
$(".modal-body #canEmSid").val(cannedEmSid);
$(".modal-body #interName").val(internalName);
$(".modal-body #emailSub").val(emailSubject);
$(".modal-body #emailBdy").val(emailBody);
$(".modal-body .note-editable").html(emailBody);
$(".modal-body #tYpe").val(type);
});
</script>
这里是模态
<div id="editEmail" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="emailActivityLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Edit Canned Response</h3>
</div>
<div class="modal-body">
<form class="form-horizontal">
<div class="control-group" style="margin-bottom:8px;">
<label class="control-label" for="inputInternalName">Internal Name</label>
<div class="controls">
<input type="text" id="interName" name="interName" placeholder="Internal Name" />
<input type="hidden" id="canEmSid" name="canEmSid"/>
</div>
</div>
<div class="control-group" style="margin-bottom:8px;">
<label class="control-label" for="inputInternalName">Type</label>
<div class="controls">
<select id="tYpe" name="tYpe">
<?PHP
while ($datearow_typeDD2 = pg_fetch_assoc($results_typesDD2))
{
echo "<option value='".$datearow_typeDD2['buyer_seller_sid']."'>".$datearow_typeDD2['buyer_seller_type']."</option>\n";
}
?>
</select>
</div>
</div>
<div class="control-group" style="margin-bottom:8px;">
<label class="control-label" for="inputSubject">Email Subject</label>
<div class="controls">
<input type="text" id="emailSub" name="emailSub" placeholder="Email Subject">
</div>
</div>
</form>
<!-- <div class="text-editor"></div> -->
<!-- <div class="summernote"></div> -->
<div id="emailEditor">
<div class="controls">
<textarea class="summernote input-block-level" id="content" name="content" rows="18"></textarea>
</div>
</div>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Cancel</button>
<button class="btn btn-success" id="editEmail">Save</button>
</div>
</div>
<script type="text/javascript">
$(document).ready(function()
{
$('.summernote').summernote({
});
$('button[id=editEmail]').on('click',function()
{
var $email_edbody_array = $('textarea[name="content"]').html($('#summernote').code());
var $email_edbody = $email_edbody_array.html();
下面只是其他变量和ajax脚本
解决方法
TomPHP解决方案不适用于较新版本的summernote.
如果任何人绊倒这个帖子是一个当前的解决方案.
如果任何人绊倒这个帖子是一个当前的解决方案.
var textareaValue = $('#summernote').summernote('code');