使用AJAX将值发送到页面时,表单操作不起作用

时间:2017-07-16 12:34:08

标签: php html ajax tinymce

美好的一天,我正在尝试使用AJAX将数据发送到页面,我使用了ajax,因为我需要文本区域的html内容(我使用的是微小的mce插件文本编辑器),我想传递文本的值区域然后将其加载到页面。但后来我检查它并进入网络XHR,我发现该页面发送了ajax数据,但它没有重定向到另一个页面,还有我的输入,其名称为' title'没有将数据发送到页面。知道如何解决这个问题吗?这是我的代码。感谢您的回复

HTML:

<form class="well" action="lessons/add_lesson.php?user_id=<?php echo $user_id; ?>" method="post" role="form">
    <div class="form-group">
        <input type="text" name="title" id="title" tabindex="2" class="form-control" required="true"
        maxlength="24" placeholder="Title">
    </div>

    <div class="form-group">
        <label for="content">Content:</label>
        <textarea id="content" name="content" class="tinymce" placeholder="Content" id="comment"></textarea>
    </div>

    <input type="hidden" name="token" value="<?php echo Token::generate(); ?>">

    <div class="form-group">
        <div class="row">
        <div class="col-md-4"></div>
        <div class="col-md-4">
            <input type="submit" name="submit" class="btn btn-primary btn-block" id="update_account" href="#" data-target="updateAccount" value="Create">
        </div>
        <div class="col-md-4"></div>
        </div>
    </div>
</form>

AJAX / JQuery的

<script>
    $(document).ready(function(){
        $('form').submit(function(e){
            //save button
            var btn_submit = $(this).find('submit');


            e.preventDefault();
            tinyMCE.triggerSave();
            var content = tinymce.get("content").getContent();
            $.ajax({
                type: 'POST',
                url: 'lessons/add_lesson.php?user_id=<?php echo $user_id; ?>',
                dataType: 'html',
                data: { data: 'fuck' },
                success: function(data){
                }
            });

        });
    });
</script>

这是网络响应 XHR

1 个答案:

答案 0 :(得分:0)

您实际上并未发送任何表单数据。 PHP没有收到title的值,因此抱怨(我的猜测)$_['POST']['title']不存在。

titlecontent值添加到data来电中的$.ajax对象:

$.ajax({
    type: 'POST',
    url: 'lessons/add_lesson.php?user_id=<?php echo $user_id; ?>',
    dataType: 'html',
    data: { 
        // add this:
        title: $('#title').val(),
        content: content
    },
    success: function(data){
    }
});