javascript - jQuery $.ajax 调用——奇怪的返回函数问题

标签 javascript php jquery json ajax

我有一个 $.ajax 调用,如下所示:

<script type="text/javascript">
    $(document).ready(function () {
        $('#add_com_frm').submit(function (e) {

            e.preventDefault();
            var $btn_c = $('#add_com_but').button('loading');
            tinyMCE.triggerSave();

            var data = {
                "id": document.getElementById("id").value,
                "body": tinymce.get('body').getContent()
            };

            $.ajax({
               type: "POST",
                url: 'https://something/test.php',
                data: data,
                dataType: 'json',
                success: function(msg,string,jqXHR) {
                    alert(msg.test);
                }
            });

        });
    });
</script>

现在有一些奇怪的事情,我无法从逻辑上解释。

PHP 端:

 <?php
    $id = $filter->purify($_POST['id']);
    $body = $filter->purify($_POST['body']);

    $today = date('d.m.Y');
    $who = 'Someone';

    $result = $db->insert_com($id, $body, $who, $today);

    $list = array('test' => 'something');
    $c = json_encode($list);
    echo $c;
 ?>

现在,如果我注释行//$result = $db->insert [...] 我收到来自 jQuery return msg.test 的警报,这是“某事”并且有效,但由于某些奇怪的原因当我取消注释该数据库相关行时,即使与返回的 json 没有直接关系,它也不起作用并且没有可见的警报。我对此没有逻辑解释,这一行在某种程度上弄乱了 echo'ed 时返回的 json 编码,但为什么呢?如何?不知道!

最佳答案

好的,伙计们,看来原因是我在数据库处理程序中包含了 Comment 类。其基本原理是基于我想用新数据来实现 Comment 对象的插入,并将其作为 html 返回。您知道如何修改我的调用函数以接受该 html 吗?

关于javascript - jQuery $.ajax 调用——奇怪的返回函数问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32569178/

相关文章:

javascript - gapi.auth.authorize : TypeError: _. Uu 不是函数

javascript - 让 Google Bot 检测 AJAX 内容

javascript - 解析云从查询中删除对象

PHP 错误 -> 警告:mysqli_stmt::execute():无法获取 mysqli_stmt |警告:mysqli_stmt::close()

javascript - Ajax请求从php文件获取数据?

javascript - 无法在同步方法内使用 gmaps 地理编码异步方法返回 true

javascript - 尽管使用目标 ="_blank",但 React Markdown 链接不会在新选项卡中打开

php - 我想使用从 Laravel 中的另一个表生成的 id 从表中打印列的值

javascript - 下拉值更改时如何检测值

javascript - jQuery 链接自定义函数