没有调用Ajax

时间:2015-02-20 00:35:19

标签: javascript jquery ajax web

我用HTML编写了一个带有三个文本框的小表单。我们的想法是创建一个“联系我”表单,该表单将使用NodeMailer提交的信息。但是,我的ajax函数没有被调用。更具体地说,信息不会被发送到NodeMailer所在的“/ time”。 任何“指针”提前谢谢!继承我的JS文件:

$(document).ready(function(){
    $("#send").click(function(e){ 

        var name = $('input#name').val();
        var email = $('input#email').val();
        var message = $('textarea#message').val();

        $.ajax({
            url: "/time",
            type: "POST",
            dataType: 'json',
            data: {
                name: name,
                email: email,
                message: message
            },
            success: function() {
                // Success message
                $('#success').html("<div class='alert alert-success'>");
                $('#success > .alert-success').html("<button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;")
                    .append("</button>");
                $('#success > .alert-success')
                    .append("<strong>Your message has been sent. </strong>");
                $('#success > .alert-success')
                    .append('</div>');

                //clear all fields
                $('#contactForm').trigger("reset");
            },
            error: function() {
                // Fail message
                $('#success').html("<div class='alert alert-danger'>");
                $('#success > .alert-danger').html("<button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;")
                    .append("</button>");
                $('#success > .alert-danger').append("<strong>Sorry " + firstName + ", it seems that my mail server is not responding. Please try again later!");
                $('#success > .alert-danger').append('</div>');
                //clear all fields
                $('#contactForm').trigger("reset");
            }
        })

    }); 

}); 

2 个答案:

答案 0 :(得分:0)

尝试使用特定的文件名而不是文件夹。即;

url: "/time/index.html",

包含Dev Console(浏览器中的F12)中的任何错误,以帮助我们为您提供帮助。

答案 1 :(得分:0)

你在这里遗漏了几件事 -

1)在ajax选项中添加contentType: "application/json"

2)对你的JSON进行字符串化:

  data: JSON.stringify({
            name: name,
            email: email,
            message: message
        }),

另外,只需仔细检查/time方法的参数是否分别是姓名,电子邮件和消息。