【问题标题】:Ajax Request Fails on second click第二次点击 Ajax 请求失败
【发布时间】:2014-09-09 10:14:31
【问题描述】:

我的 AJAX 请求有问题。我通过 foreach 循环显示数据,为每个条目创建删除按钮。我第一次单击其中一个按钮时,条目被正确删除,但第二次单击下一个元素失败。

<?php foreach ($notes as $note): ?>

...

<script type="text/javascript">
        $(document).ready(function () {
               $("<?php echo '#NoteDeleteButton' . $note['Note']['id']>").bind("click", function () {
                    $.ajax({async: true,
                           dataType: "html", success: function (data) {
                           $("#NoteUpdateSection").html(data);
                    }, type: "POST", url: "<?php if($this->base != '') { echo '' . $this->base; } ?>\/notes\/delete\/<?php echo $note['Note']['id'] ?>\/<?php echo $current_controller ?>\/<?php echo $current_id ?>"});
                    return false;
               });
       });
</script>

...

<?php endforeach; ?>

在我的浏览器控制台中,第一次单击删除按钮后出现此错误:

Uncaught SyntaxError:
Unexpected identifier   jquery.min.js?1406620464:2
(anonymous function)    jquery.min.js?1406620464:2
n.extend.globalEval     jquery.min.js?1406620464:2
n.fn.extend.domManip    jquery.min.js?1406620464:3
n.fn.extend.append      jquery.min.js?1406620464:3
(anonymous function)    jquery.min.js?1406620464:3
n.access                jquery.min.js?1406620464:3
n.fn.extend.html        jquery.min.js?1406620464:3
$.ajax.success          71:13184
j                       jquery.min.js?1406620464:2
k.fireWith              jquery.min.js?1406620464:2
x                       jquery.min.js?1406620464:4
b                       jquery.min.js?1406620464:4

您对如何处理这个问题有任何想法吗?我感谢您的帮助!非常感谢!!

【问题讨论】:

  • 我认为您可能正在用动态添加的内容替换按钮。查看委托事件learn.jquery.com/events/event-delegation
  • 您提到第一次点击后已经出现错误。似乎它来自 html() 函数。 ajax调用返回的数据是什么?

标签: javascript jquery ajax cakephp cakephp-2.0


【解决方案1】:

我发现了错误:在这段代码上方是一个不完整的 Ajax 请求。

【讨论】:

    猜你喜欢
    • 2011-07-14
    • 1970-01-01
    • 2023-01-25
    • 1970-01-01
    • 1970-01-01
    • 2021-12-10
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多