You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP表单中Summernote编辑器无法获取提交数据的求助

解决PHP表单中Summernote文本编辑器无法提交数据的问题

你的代码存在几个关键问题,导致无法获取Summernote的输入数据,以下是修复方案:

问题点及修复步骤

  • textarea内容赋值错误:textarea标签不支持通过value属性设置初始内容,需将内容直接放在标签内部:
    原代码:

    <textarea id="summernote" name ="summernote" rows="10" value="<?php echo $contenu_article; ?>"></textarea>
    

    修正为:

    <textarea id="summernote" name="summernote" rows="10"><?php echo $contenu_article; ?></textarea>
    
  • postForm函数作用域错误:原函数定义在$(document).ready()内部,属于局部函数,表单的onsubmit无法调用。需将函数移到全局作用域,同时补充表单提交的返回逻辑:
    原代码:

    $(document).ready(function(){
        var postForm = function() {
            var content = $('textarea[name="summmernote"]').html($('#summernote').code());
        }
    });
    

    修正为:

    function postForm() {
        $('textarea[name="summernote"]').val($('#summernote').summernote('code'));
        return true;
    }
    
  • 拼写错误:原代码中name="summmernote"多了一个字母m,需改为name="summernote";同时注意Summernote获取内容的方法是summernote('code'),且要用val()而非html()设置textarea的值。

  • 表单标签语法错误:action属性与method属性之间缺少空格,修正为:

    <form action="<?php echo $action; ?>" method="post" onsubmit="return postForm()">
    

修正后的完整代码

<form action="<?php echo $action; ?>" method="post" onsubmit="return postForm()">
    <div class="col-lg-6 col-md-2">
        <div class="form-group">
            <label>Date</label>
            <input type="text" name="date_pub" class="form-control" id="date_pub" size="10" value="<?php echo $date_article ?>" placeholder="Date de la Publication"/>
        </div>
        <div class="form-group">
            <label>Titre Publication</label>
            <input class="form-control" name="titre_pub" type="text" size="25" value="<?php echo $titre_article ?>" placeholder="Titre de la Publication"/>
        </div>
        <div class="control-group">
            <label class="control-label" for="summernote">Article</label>
            <div class="controls">
                <textarea id="summernote" name="summernote" rows="10"><?php echo $contenu_article; ?></textarea>
            </div>
        </div>
        <div class="control-group">
            <br>
            <input type="submit" class="btn btn-primary" value="<?php echo $lib_btn ?>">
        </div>
    </div>
</form>

<script>
$( function() {
    $( "#date_pub" ).datepicker( $.datepicker.regional[ "fr" ] );
} );
// Summernote
$(function () {
    $('#summernote').summernote({
        height: 600,                 // set editor height
        focus: true                  // set focus to editable area after initializing summernote
    });
});
</script>

<script type="text/javascript">
function postForm() {
    // 将Summernote的内容同步到textarea
    $('textarea[name="summernote"]').val($('#summernote').summernote('code'));
    // 返回true允许表单提交
    return true;
}
</script>

内容的提问来源于stack exchange,提问作者Taz28

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 12:10:54