无法跨域执行AJAX请求( UPD:
不再适用,所有现代浏览器都支持CORS),但是您可以改用JSONP。尽管JSONP可以跨域工作,但是它不能用于POST请求,并且您需要将表单的方法更改为
get并使用此方法:
$('#contact').ajaxForm({ success: function() { $('#success').fadeIn("slow"); }, error: function() { $('#error').fadeIn("slow"); }, dataType: 'jsonp'});上面的解决方案依赖于您的服务器以有效的jsonp响应进行响应,否则
success将不执行处理程序。例如:
response.write(request.callback+ '(' + result.to_json + ')')jQuery的最新版本可以在没有
ajaxForm插件的情况下序列化表单。如果不需要文件上传,可以使用以下命令:
$('form').submit(function() { var url = $(this).attr('action') var params = $(this).serialize() $.getJSON(url + '?' + params + "&callback=?", function(data) { // success }) return false});


