Onclick ajax无法正常工作

时间:2016-06-13 08:31:51

标签: javascript jquery html ajax

当我点击提交按钮时,textarea标签的信息应该使用ajax.can发送到邮件任何人helpme.thankyou。

$(document).on("click", "#submit-btn", function() {

2 个答案:

答案 0 :(得分:2)

问题是因为您已连接到提交按钮的click事件,而不是submit的{​​{1}}事件。这意味着表单仍然正常提交,并且忽略了AJAX请求的响应。

如上所述,请联系form的{​​{1}}事件来解决问题并使用submit停止标准表单提交:

form

另请注意,我删除了preventDefault()属性(因为$(document).on("submit", "#yourFormElement", function(e) { e.preventDefault(); $.ajax({ url: "https://ivr.callxl.com/callXLWeb/SendingEmail", type: 'POST', contentType: "application/json; charset=utf-8", data: { comment: $("#cmessage").val() }, dataType: "json", success: function (data, textStatus, jqXHR) { if (data.success) { alert("successfully sent"); } else { // handle error here... } }, error: function(jqXHR, textStatus, errorThrown){ alert(jqXHR.responseText); console.log("Something really bad happened " + textStatus); $("#errorResponse").html(jqXHR.responseText); } }); }); )是默认属性,并为async属性提供了一个对象,以便为您编码值。

您还应该确保您呼叫的域支持跨域请求,否则Same Origin Policy会阻止您的请求。如果是这种情况,那么您需要在服务器端发出请求。

答案 1 :(得分:1)

我认为你应该这样做。

$("#submit-btn").on("click",function() {
    $.ajax({
        url: "https://ivr.callxl.com/callXLWeb/SendingEmail",
        type: 'POST',       
        contentType: "application/json; charset=utf-8",
        data: { comment: $("#cmessage").val() },
        dataType: "json",
        success: function (data, textStatus, jqXHR) {
            if (data.success) {
                alert("successfully sent");
            } else {
                // handle error here...
            }
        },
        error: function(jqXHR, textStatus, errorThrown){
            alert(jqXHR.responseText);
            console.log("Something really bad happened " + textStatus);
            $("#errorResponse").html(jqXHR.responseText);
        }
    });
});