Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery从其id筛选div_Javascript_Jquery - Fatal编程技术网

Javascript 使用jquery从其id筛选div

Javascript 使用jquery从其id筛选div,javascript,jquery,Javascript,Jquery,我尝试的是创建导航。像 正文 链接1 链接2 正文 链接3 链接4 HTML是动态的,所以我无法控制它。改用JS var x=document.getElementsByTagName('DIV'); 对于(i=0;i

我尝试的是创建导航。像

正文

  • 链接1

  • 链接2

正文

  • 链接3

  • 链接4

HTML是动态的,所以我无法控制它。

改用JS
var x=document.getElementsByTagName('DIV');
对于(i=0;i
我想这就是你想要的。

改用JS
var x=document.getElementsByTagName('DIV');
对于(i=0;i

我想这就是你要找的。

只需使用attr获取id即可

var x = document.getElementsByTagName('DIV');
for(i = 0 ; i < x.length ; i++){
  var y = document.getElementsByTagName('DIV')[i];
  var z = y.getAttribute('ID');
  var m = z.search('contentLink2');
  if(m == -1){
    // NO THING
  }else{
    // Do Some Thing Here 
  };
}

只需使用attr获取id

var x = document.getElementsByTagName('DIV');
for(i = 0 ; i < x.length ; i++){
  var y = document.getElementsByTagName('DIV')[i];
  var z = y.getAttribute('ID');
  var m = z.search('contentLink2');
  if(m == -1){
    // NO THING
  }else{
    // Do Some Thing Here 
  };
}

可以使用jQuery属性选择器来实现这一点

var listids =  $('div.link');
listids.each(function(index, element){
    var contentId = $(this).attr('id');
    // or use the second paramater to access the element
    // var contentId = $(element).attr('id'); 
    console.log(contentId.indexOf('contentLink2') !== -1);
});

可以使用jQuery属性选择器来实现这一点

var listids =  $('div.link');
listids.each(function(index, element){
    var contentId = $(this).attr('id');
    // or use the second paramater to access the element
    // var contentId = $(element).attr('id'); 
    console.log(contentId.indexOf('contentLink2') !== -1);
});

下面peter hany的答案看起来不错,js通常更快。如果您想保持jquery的速记,可以使用
var contentId=$(this.attr('id').indexOf(“contentLink2”);如果(contentId!=-1){do something}…
下面peter hany的答案看起来不错,js通常更快。如果您想保持jquery的速记,可以使用
var contentId=$(this.attr('id').indexOf(“contentLink2”);如果(contentId!=-1){do something}…
当您可以说
this.id
时,为什么要使用
$(this.attr('id')
?(另外,如果OP希望查找ID以该文本开头的元素,那么最好测试
.indexOf()==0
)谢谢Moes。我已经尝试了您的解决方案,并相应地修改了我的代码以使其正常工作。很高兴提供帮助:),关于在html标记中使用id的快速说明
id=“contentlink200003”
我将使用数据破折号属性
data id=“contentlink200003”
,并且在jquery中您可以使用
$(this).attr(“data id”)
$(this.data(“id”)
当您可以说
this.id
时,为什么要使用
$(this.attr('id')
?(另外,如果OP希望查找ID以该文本开头的元素,那么最好测试
.indexOf()==0
)谢谢Moes。我已经尝试了您的解决方案,并相应地修改了我的代码以使其正常工作。很高兴提供帮助:),关于在html标记中使用id的快速说明
id=“contentlink200003”
我将使用数据破折号属性
data id=“contentlink200003”
,在jquery中您可以使用
$(this).attr(“data id”)
$(this.data(“id”)
listids.filter('[id^=contentLink2]').doSomething()