Javascript JS/jQuery-如何一次获取两个DIV内容的文本?

Javascript JS/jQuery-如何一次获取两个DIV内容的文本?,javascript,jquery,html,Javascript,Jquery,Html,我想在所有元素中循环,我想在两个变量中写入同一元素的标题和链接。在JS/jQuery中如何实现这一点 我的HTML: 预期的结果是,我可以使用参数Microsoft/调用函数Start\u,使用参数Google/调用函数Work\u 如何以优雅的方式解决此问题?类似于以下内容?这将遍历所有td元素,并获得所需的数据。而不是嵌套循环 $('td').each(function(){ var str_CurrentTitle = $(this).children(".class_Title"

我想在所有元素中循环,我想在两个变量中写入同一元素的标题和链接。在JS/jQuery中如何实现这一点

我的HTML:

预期的结果是,我可以使用参数Microsoft/调用函数Start\u,使用参数Google/调用函数Work\u


如何以优雅的方式解决此问题?

类似于以下内容?这将遍历所有td元素,并获得所需的数据。而不是嵌套循环

$('td').each(function(){
    var str_CurrentTitle = $(this).children(".class_Title").text().trim();
    var str_CurrentLink = $(this).children(".class_Link").text().trim();

    //call another function, to work with the result
    Start_To_Work_With_The_Result(str_CurrentTitle, str_CurrentLink)
})

这假设您希望在td元素中访问的所有div元素都具有class class_Title和class_Link。

类似于以下内容?这将遍历所有td元素,并获得所需的数据。而不是嵌套循环

$('td').each(function(){
    var str_CurrentTitle = $(this).children(".class_Title").text().trim();
    var str_CurrentLink = $(this).children(".class_Link").text().trim();

    //call another function, to work with the result
    Start_To_Work_With_The_Result(str_CurrentTitle, str_CurrentLink)
})

这假设您要在td元素中访问的所有div元素都具有class_Title和class_Link类。

您的嵌套循环得到的是Title和Link的所有组合,而不仅仅是相关的对

您应该只有一个循环,然后使用DOM导航方法获取同级元素

$.class\u Title.eachfunction{ var str_CurrentTitle=$this.text.trim; var link=$this.sibbins.class_link; var str_CurrentLink=link.text.trim; 使用\u Resultstr\u CurrentTitle、str\u CurrentLink启动\u To \u Work \u; }; 函数Start到Work与resultitle链接{ console.logtitle,链接; } 微软 https://www.microsoft.com 谷歌 https://www.google.com
嵌套循环将获得标题和链接的所有组合,而不仅仅是相关的对

您应该只有一个循环,然后使用DOM导航方法获取同级元素

$.class\u Title.eachfunction{ var str_CurrentTitle=$this.text.trim; var link=$this.sibbins.class_link; var str_CurrentLink=link.text.trim; 使用\u Resultstr\u CurrentTitle、str\u CurrentLink启动\u To \u Work \u; }; 函数Start到Work与resultitle链接{ console.logtitle,链接; } 微软 https://www.microsoft.com 谷歌 https://www.google.com

可能不应该在同一页上重用id属性。id DOM元素属性对于该页是唯一的。可能不应该在同一页上重用id属性。IDDOM元素属性是该页面的唯一属性。你的答案是正确的,原始JS不应该这样做。不起作用。结果是微软和谷歌都获得了这个头衔。我想要的是第一个标题,而不是标题的链接。@EmbaBakar你确定没有弄乱代码吗?对我来说似乎是正确的。是否可以发布JSFIDLE?我在答案中添加了一个可执行代码段。我不得不加上。。。你的答案是正确的,原来的JS没有它应该做的。不起作用。结果是微软和谷歌都获得了这个头衔。我想要的是第一个标题,而不是标题的链接。@EmbaBakar你确定没有弄乱代码吗?对我来说似乎是正确的。是否可以发布JSFIDLE?我在答案中添加了一个可执行代码段。我不得不加上。。。为了得到正确的结果,OP也有一个错误的嵌套。每个嵌套都是错误的,所以我不会假设太多,但是你的solution@thex说得好。我相信一个好的答案应该解决这些边缘问题。所以我只是在我的答案中添加了一个部分来解释条件是答案的一个要求。@EmbaBakar您在a.each中有一个.each,这对性能不好,并且没有按照我认为您期望的方式执行。是否可以使用ID指定td-以确保只有这些td在循环中?。我不知道你说的是什么意思。你的意思是限制它不是所有的td?@EmbaBakar嵌套的意思是,在你的例子中,你在标题提取的每个迭代中迭代,也迭代每个链接,这不是你真正想要的。你不需要@CharlieFish上的ID,非常感谢-现在我知道了。OP也有一个错误的嵌套。每个都是这样,所以我不会假设太多,但是你的solution@thex说得好。我相信一个好的答案应该解决这些边缘问题。所以我只是在我的答案中添加了一个部分来解释条件是答案的一个要求。@EmbaBakar您在a.each中有一个.each,这对性能不好,并且没有按照我认为您期望的方式执行。是否可以使用ID指定td-以确保只有这些td在循环中?。我不知道你说的是什么意思。你的意思是限制它不是所有的td?@EmbaBakar嵌套的意思是,在你的例子中,你在标题提取的每个迭代中迭代,也迭代每个链接,这不是你真正想要的。你不需要在你的@CharlieFish上有身份证,非常感谢-现在我知道了。
$('td').each(function(){
    var str_CurrentTitle = $(this).children(".class_Title").text().trim();
    var str_CurrentLink = $(this).children(".class_Link").text().trim();

    //call another function, to work with the result
    Start_To_Work_With_The_Result(str_CurrentTitle, str_CurrentLink)
})