我正在使用此代码来实现我在标题中所说的内容:
$("#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;
});
问题是,我从 firebug 得到这个:
"NetworkError: 400 Bad Request - http://domain.info/%3C!DOCTYPE%20html%20PUBLIC"
它以某种方式将表单的结果添加到链接中。 有人知道这是为什么吗?也许有更好的建议?
编辑:ajax 帖子的响应是一个 HTML 页面。 HTML 代码由 fancybox 附加到链接中,所以我想这会缩小研究范围。帖子制作正确,我用 firebug 检查过。
谢谢。
最佳答案
我猜错误在于 url: base_url 参数,因为请求包含无效的 url 字符,您可能会显示 base_url 值,或者您的意思是
<?=base_url();?>
关于jQuery 和 Codeigniter - 使用 ajax 发布表单并在 fancybox 中显示结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7077664/