我正在使用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()
{
...
我的测试网址总长度为906个字符(完全符合IE7的2000年限制)。
答案 0 :(得分:10)
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'
}
}
}
});