这种情况:
用户将其zip插入输入字段,然后单击魔术按钮时,他会看到最接近其位置的商店。我称该服务很好,并以一些AJAX优点加载了该服务。一切都很好。
现在,我希望将结果显示在Fancybox中,而不是将结果插入页面上的某处。我根本无法完成这项工作。
JavaScript:
$('#button').on('click', function(){ // Function to build the URL edited out for simplicity var nzData = '/url.com?Zip=8000 #module'; $.fancybox({ ajax: { data: nzData } }); });
我希望Fancybox弹出并显示URL(nzData)中的标记。Fancybox已加载,但不是内容,而是一个字符串,内容为“ 无法加载所请求的内容。请稍后再试。 ”。
nzData
服务不是问题,所以我怀疑这只是我忽略了某些事情或强奸了Fancybox API。那么,我在做什么错呢?
编辑:我忘了提,我使用的是旧版本的Fancybox(v1.3.4)。
我最终将内容加载到页面上的隐藏容器中,然后在Fancybox中显示该内容。
$('#button').on('click', function(){ var nzData = '/url.com?Zip=8000 #module'; $('#foo').load(nzData, function(){ var foo = $('#foo').html(); $.fancybox(foo); }); });
我承认它不是很漂亮,但这是我可以使它起作用的唯一方法。今天早上,我与另一位开发人员进行了交谈,他们在类似问题中采用了相同的解决方案。
尽管如此,必须有更好的解决方案。如果有人知道,我很想听听!