JQuery 内容可编辑 div 且提交后的文本框未发送 POST

JQuery content editable div and text box on submit not sending POST

我有一个网站,您可以在其中编辑和格式化文本,然后可以将其保存到服务器上。我正在使用 jquery 将数据发送到将保存数据的 PHP 页面。我的站点不会将文件名和格式化文本发送到 PHP。

这是我的 html 代码:

<div id="editor" contenteditable="true">
    This is the editable text.
</div>

<input type="text" id="name" placeholder="File Name">
<input type="submit" id="save" value="Save">

<script>
    $(document).ready(function() {
        $("#save").on("click", function(event) {
            var formData = {text: $("#editor").html(), name: $("#name").val()};
            event.preventDefault();
            $.ajax({
                url: 'freewordsave.php',
                type:'POST',
                data: formData,
                success: function(msg)
                {
                    alert('Your file was saved!');
                }
            });
        });
    });
</script>

这也是我的 PHP 代码:

$name = $_POST['name'];
$text = $_POST['data'];
$file = fopen("./location/" . $name . ".html", "w") or die("<script> alert('Error'); </script>");
fwrite($file, $text);
fclose($file);

我的代码甚至不会在 javascript 中显示警报。

谢谢。

我在 Simone Rossaini 发表评论后修复了我的代码。 我忘记了 } 结束括号在 formData 的末尾。

已修复 JQuery 代码。

$(document).ready(function() {
    $("#save").on("click", function(event) {
        var formData = {text: $("#editor").html(), name: $("#name").val()};
        event.preventDefault();
        $.ajax({
            url: 'freewordsave.php',
            type:'POST',
            data: formData,
            success: function(msg)
            {
                alert('Your file was saved!');
            }
        });
    });
});

我知道我的 PHP 说 $_POST['data'] 但那是我问问题时犯的一个错误,在我的 PHP 文件中实际上不是这样。

谢谢