可以在简单的代码中结合我的jQuery吗?
$(document).ready(function () {
$("a.type").live('click', function () {
var type = $(this).data("id");
$('#advertisements').load("ads.php?" + type);
});
$("a.maincat").live('click', function () {
var maincat = $(this).data("id");
$('#advertisements').load("ads.php?" + maincat);
});
$("a.subcat").live('click', function () {
var subcat = $(this).data("id");
$('#advertisements').load("ads.php?" + subcat);
});
$("a.region").live('click', function () {
var region = $(this).data("id");
$('#advertisements').load("ads.php?" + region);
});
$("a.byuser").live('click', function () {
var byuser = $(this).data("id");
$('#advertisements').load("ads.php?" + byuser);
});
});
根据此代码,我如何加载默认内容$('#advertisements').load("ads.php?" + 1);
目前需要点击加载特定内容。
让我知道
答案 0 :(得分:2)
您可以使用多个选择器,因为您始终需要id
属性中的数据
并且每次都从同一个脚本加载。
$(document).ready(function () {
$("a.type,a.maincat,a.subcat,a.region,a.byuser").live('click', function () {
var id = $(this).data("id");
$('#advertisements').load("ads.php?" + id);
});
$('#advertisements').load("ads.php?" + 1);
});
您确定要$(this).data("id")
而不是要点击的元素的ìd
值吗?
如果您希望id
属性中的值执行此操作
var id = $(this).attr("id");
而不是
var id = $(this).data("id");
答案 1 :(得分:1)
如果你可以将这些链接包含在div / li标签中,如下所示,
<div class="links_to_load" >
<a href="#" id="something1>Something 1</a>
<a href="#" id="something2>Something 2</a>
<a href="#" id="something3>Something 3</a>
<a href="#" id="something4>Something 4</a>
<a href="#" id="something5>Something 5</a>
</div>
你可以将它们绑定在下面,
$('.links_to_load > a').live('click', function () {
//do the stuffs here
});
答案 2 :(得分:1)
好吧,您可以使用多个选择器来简化代码,如果我理解正确,也可以加载默认内容:
$(document).ready(function () {
$("a.type, a.maincat, a.subcat, a.byuser, a.region").live('click', function () {
$('#advertisements').load("ads.php?" + $(this).data("id"));
});
$('#advertisements').load("ads.php?1");
});