ajax POST 函数未在 Node.js 中触发

ajax POST function does not get triggered in Node.js

因此,我遇到了 POST 请求的问题。我需要它以便在不重新加载页面的情况下更新信息。这是我的哈巴狗代码:

.tinder--buttons
            form(id="form1")
                button#love(type="submit")
                    i.fa.fa-heart

这里是 javascript 文件中的代码:

(document).ready(function() {
    $("button").click(function () {
        console.log("Got there");
        e.preventDefault();
        $.ajax({
            type: "POST",
            url: "gono",
            data: {
                place: places[0].placeId, 
            },
            success: function (result) {
                alert('ok');
            },
            error: function (result) {
                alert('error');
            }
        });
    });
});

我已经尝试将描述更改为

$("button").on('click', function()
$("#love").on('click', function()

和其他变体,但它甚至不执行请求,因为控制台日志不起作用。我究竟做错了什么?任何建议都非常受欢迎。

您必须使用 .on('click') 将事件附加到父容器,它将始终存在于 DOM 中,并将目标元素的选择器作为第二个参数传递,如下所示。

 $(document).ready(function() {
        $(document).on('click', "#love", function () {
            $.ajax({
                type: "POST",
                url: "gono",
                data: {
                    place: places[0].placeId, 
                },
                success: function (result) {
                    alert('ok');
                },
                error: function (result) {
                    alert('error');
                }
            });
        });
    });