繁体   English   中英

jQuery Ajax表单没有成功消息

[英]Jquery Ajax form no success message

我有一个可以在我的本地计算机上正常工作的html表单。 当我上传它时,它也可以正常工作,但不会显示成功消息。 这是我正在使用的脚本:

<script>
$(document).ready(function() {  
    // validate signup form on keyup and submit
    $("#_form_1033").validate({
    submitHandler: function(form) {
        $.ajax({
            url: form.action,
            type: form.method,
            data: $(form).serialize(),
            success: function(data) {
            $("#myformdiv").replaceWith("<p>Thanks!</p>");           
            }            
        });
    }
    });
});
</script>

有什么建议吗? 链接到实时示例-http://ch2.co.il/form/smallsubscribe2015.html可能是此错误-如果可以,我该如何解决? XMLHttpRequest无法加载XXX请求的资源上不存在“ Access-Control-Allow-Origin”标头。 因此,不允许访问源“ http://ch2.co.il ”。

谢谢

问题是因为您正在发出跨域AJAX请求,但由于浏览器安全性的原因而无法访问它-请参见“ 相同来源策略”。

该请求期望您正在向启用了CORS的域发出请求,因此为什么它抱怨不存在的标头。

您或者需要将请求更改为jsonp类型,或者使用服务器端代理来获取数据。

所以最好将crossDomain:true添加到您的ajax函数中,如下所示

$("#_form_1033").validate({
    submitHandler: function(form) {
        $.ajax({
            url: form.action,
            type: form.method,
            crossDomain:true,
            data: $(form).serialize(),
            success: function(data) {
            $("#myformdiv").replaceWith("<p>Thanks!</p>");           
            }            
        });
    }
});

谢谢回复。 这是固定的原因:

dataType: "json",

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM