如果我str="id1";
我不想用 $("#id1“) 能不能用str代替
可以的。
$("#"+str)
这个一般是封装通用方法的时候用,比如 操作多个id的时候可以先封装一个方法然后把id传进来。
function showdiv(divid){
$("#"+divid).css("display","block");
}
调用:showdiv("div");
$("#"+str)
这个一般是封装通用方法的时候用,比如 操作多个id的时候可以先封装一个方法然后把id传进来。
function showdiv(divid){
$("#"+divid).css("display","block");
}
调用:showdiv("div");
温馨提示:答案为网友推荐,仅供参考
第1个回答 2015-09-25
肯定是可以的。
下面是个小例子。仅供参考。
<body><div name="index1"></div>
<div name="index2"></div>
<div name="index3"></div>
</body>
<script>
for(var i=0;i<document.getElementsByTagName('div').length;i++){
$('[name=index'+i+']').css('background','red');
}
</script>
虽然没有人,这么用,但是只是说是可以用变量的。
第2个回答 推荐于2018-02-26
可以
str="id1";$("#"+str);//可代表$("#id1“)
--------------------------------
str=$("#id1");//str 就就代表了 id1
意义不大....
本回答被提问者和网友采纳第3个回答 2014-06-12
可以尝试下,也许可以。但是这样做个人感觉没什么意义。。因为你多定义了一个变量,就多消耗了资源,如果程序比较大会影响性能。