我正在构建一个面向ajax的站点,我的所有链接都是这样的:
<div class="link">press me </div>
<div id="contents" ></div>
<script>
$('div[class="link"]').click(function() {
$.ajax({
url: 'contents/get_products.php',
type: "GET",
data:
dataType: 'json',
success:
function(data){
$.each(data, function(i){
$('#contents').append('<div class="cat_list_item">something</div>');
});
}
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
如何在新选项卡中打开这些链接(在中间单击或右键单击"新选项卡中的打开链接").
我知道浏览器只打开原始页面(url)而没有从Ajax调用中检索到的数据,但是如何让它在新选项卡中加载数据.我一直在寻找互联网,到目前为止我还没有找到解决方案.
不,至少用你的方法做到这一点几乎是不可能的。如果您想使用浏览器本机提供的新选项卡功能,则不能将div
s 与附加的 Javascript 处理程序一起用于链接。
您可以做什么:使用window.open
with_blank
作为目标,但是您会遇到弹出窗口阻止程序的问题,这可能不是您想要的。
您还可以使用<a class="link" href="my-ajax-view/?some=parameters">press me</a>
并编写一个页面来显示您正在寻找的内容(这对我来说似乎是最好的解决方案,因为这样您还可以为 5% 关闭 Javascript 的用户提供功能)。单击该链接时,您仍然可以使用 JQuery 进行一些奇特的 AJAX 加载,但如果有人在新选项卡中打开该链接,您将重定向到收集信息的页面。您的新点击处理程序将如下所示:
$('a.link').click(function(event) {
event.preventDefault();
// Your ajax request here
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11117 次 |
最近记录: |