我使用magnific popup和ajax将内容加载到其中,并通过向url添加查询字符串将值传递给ajax内容,除了在IE7(可能也在IE8)中工作良好。原因很可能是查询字符串的长度,因为当我缩短它时它可以工作。
所以我的问题是,是否有可能通过某种数据设置传递它,并使其使用POST而不是GET。或者它已经使用post了,我只需要使用正确的方法。
这是我的:
$.magnificPopup.open({
tLoading:"",
modal:false,
type:'ajax',
alignTop:true,
items:{src:urlContainingVeryLongQueryString},
callbacks:
{
ajaxContentAdded:function()
{
...
我的测试url总共有906个字符长(完全在IE7的2000ish限制之内)。
将ajax.settings
选项http://dimsemenov.com/plugins/magnific-popup/documentation.html#ajax_type传递给jQuery.ajax
方法http://api.jquery.com/jQuery.ajax/#jQuery-ajax-settings,例如:
$.magnificPopup.open({
tLoading:"",
modal:false,
type:'ajax',
alignTop:true,
items:{src:'http://example.com/ajax'},
ajax: {
settings: {
type: 'POST',
data: {
foo: 'bar'
}
}
}
});