Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何从nodejs获取ajax响应_Jquery_Node.js_Ajax - Fatal编程技术网

Jquery 如何从nodejs获取ajax响应

Jquery 如何从nodejs获取ajax响应,jquery,node.js,ajax,Jquery,Node.js,Ajax,我正在尝试提交一个表单,然后它通过AJAX发送状态success。 但是,当我在提交表单后从NodeJS发送状态时,它没有到达AJAX代码,因为我已经放置了一个alert()语句来检查它是否到达。警报不会被触发,但它会直接打印我在send(“此文本已打印”)中写入的值。 我的test.js文件是 $(document).ready(function() { $('#form_submit').click(function() { $.ajax({

我正在尝试提交一个表单,然后它通过AJAX发送状态
success
。 但是,当我在提交表单后从NodeJS发送状态时,它没有到达AJAX代码,因为我已经放置了一个
alert()
语句来检查它是否到达。警报不会被触发,但它会直接打印我在
send(“此文本已打印”)中写入的值。

我的test.js文件是

$(document).ready(function() {
    $('#form_submit').click(function() {
        $.ajax({
            url: '/submitForm',
            type: 'POST',
            contentType: 'application/json',
            success: function(result) {
                alert(result.status);
                if (result.status === "success") {
                    alert("success");
                    window.location = '/nextPage';

                } else {
                    alert("failure");
                }

            },
            error: function(err) {
                alert('error');
            }
        })
    });
});
下面给出了我的NodeJS代码

app.post('/submitForm', function(req, res) {
    // submitted form to database
    var form = new Form({
        name: req.body.name,
        email: req.body.email,
        number: req.body.number,
    });
    form.save(function(err) {
        if (err) {
            throw new Error(err);
        } else {
            res.send({
                status: 'success',
                message: 'successfully form created'
            });
        }
    });
});

您必须将res.send()更改为res.json(),才能发送json数据

ajax中没有警报,而是直接打印发送(“”)值
-您能澄清这是什么意思吗?我不明白问题出在哪里。@hamberrific表示我指定了
alert(result.status)在我的ajax代码中,但它不会代替res.send而出现({'这将在下一页打印')此事件在ajax中仍然没有响应。这应该是一条注释