【发布时间】:2011-10-28 00:08:14
【问题描述】:
我正在使用这段代码来实现我在标题中所说的:
$("#design-preview").click(function() {
e.preventDefault();
var data = $(this).closest("form").serializeArray();
$.ajax({
type : "POST",
cache : false,
url : base_url,
data : data,
success : function(data) {
$.fancybox(data, {
'type' : 'iframe',
'width' : 340,
'height': 500
});
}
});
return false;
});
问题是,我是从萤火虫那里得到的:
"NetworkError: 400 Bad Request - http://domain.info/%3C!DOCTYPE%20html%20PUBLIC"
它以某种方式将表单的结果添加到链接中。 有谁知道这是为什么?也许有更好的建议?
编辑:ajax 帖子的响应是一个 HTML 页面。 HTML 代码是由 fancybox 附加到链接的,所以我想这会缩小研究范围。帖子是正确的,我用萤火虫检查了。
谢谢。
【问题讨论】:
-
url 必须指向处理输入序列化数组的文件或控制器
-
@Alfonso:你好!不,这是一个链接。我纠正了点击处理程序,尽管帖子变量被正确接收。我猜 jQuery 15 数字采用了放置链接的形式。
-
在Firefox中,检查
console.log(base_url)和console.log(data)的输出是否成功。 base_url 不受fancybox 在此代码中的影响。
标签: jquery ajax codeigniter post fancybox