Javascript 将查询参数与单击操作的选择器类进行比较
我有一个div列表,单击每个div将显示另一个div。我当前有一个脚本,该脚本将接受查询参数值Javascript 将查询参数与单击操作的选择器类进行比较,javascript,jquery,Javascript,Jquery,我有一个div列表,单击每个div将显示另一个div。我当前有一个脚本,该脚本将接受查询参数值(例如:http://domain.com/?id=1),去掉id的值,并使用该值以该数字作为一个类触发相应的div。我目前的做法是: var param = window.location.search.split('?id=')[1]; if(param == 1){ $(".1").click(); } else if(param == 2){ $(".2").clic
(例如:http://domain.com/?id=1)
,去掉id
的值,并使用该值以该数字作为一个类触发相应的div。我目前的做法是:
var param = window.location.search.split('?id=')[1];
if(param == 1){
$(".1").click();
}
else if(param == 2){
$(".2").click();
}
else if(param == 3){
$(".3").click();
}
else if(param == 4){
$(".4").click();
}
else if(param == 5){
$(".5").click();
}
else if(param == 6){
$(".6").click();
}
else if(param == 7){
$(".7").click();
}
else if(param == 8){
$(".8").click();
}
else if(param == 9){
$(".9").click();
}
else if(param == 10){
$(".10").click();
}
});
我已尝试创建一个循环来遍历所有选择器:
var array = [];
$('.list-group li').each(function(idx, el){
array.push(el);
});
但是我很难弄清楚如何将查询参数的值与数组中的值进行比较,并选择数组值来触发类。简单地在列表组上循环的一个主要原因是有10个以上的项目。我可能考虑过这个功能,可以只使用原始的实现,但我认为这可能更干净。假设您有一个类名数组:
if( divClasses.indexOf(param) > -1 ){
$("."+param).click();
}
假设您有一个类名数组:
if( divClasses.indexOf(param) > -1 ){
$("."+param).click();
}
试试这个
var array = [];
$('.list-group li').each(function(idx, el){
array.push(el);
});
var param = window.location.search.split('?id=')[1];
param = parseInt(param);
if(param && array[param]) {
array[param].click();
}
试试这个
var array = [];
$('.list-group li').each(function(idx, el){
array.push(el);
});
var param = window.location.search.split('?id=')[1];
param = parseInt(param);
if(param && array[param]) {
array[param].click();
}
通过按如下方式构建选择器字符串,可以摆脱
if
语句:
var param = window.location.search.split('?id=')[1];
$("." + param).click();
i、 e
- 获取参数号
- 选择参数计算为的具有类值的所有元素
- 调用所选内容的
方法click()
if
语句:
var param = window.location.search.split('?id=')[1];
$("." + param).click();
i、 e
- 获取参数号
- 选择参数计算为的具有类值的所有元素
- 调用所选内容的
方法click()
单击
方法:
var id = window.location.search.split('?id=')[1]; // grab the input
var selector = '.' + id; // construct the selector
var div = $(selector); // search for the div
if(div.length > 0) { // check if the div is found
div.click(); // perform the click
}
首先尝试根据输入参数创建选择器,然后检查是否存在此类div,如果存在,则调用其
单击方法:
var id = window.location.search.split('?id=')[1]; // grab the input
var selector = '.' + id; // construct the selector
var div = $(selector); // search for the div
if(div.length > 0) { // check if the div is found
div.click(); // perform the click
}
既然你已经有了var
所以你可以简单地做
var param=window.location.search.split('?id=')[1];
$('.+参数)。单击()代码>
无需创建新数组,因为您已经有了var
所以你可以简单地做
var param=window.location.search.split('?id=')[1];
$('.+参数)。单击()代码>
无需创建新阵列这正是我想到的想法!非常感谢。这就是我想到的主意!非常感谢。