Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.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 如何获取内部的跨度值<;td>;(表格数据),当单击也在<;td>;_Javascript_Jquery_Html_Dom_Html Table - Fatal编程技术网

Javascript 如何获取内部的跨度值<;td>;(表格数据),当单击也在<;td>;

Javascript 如何获取内部的跨度值<;td>;(表格数据),当单击也在<;td>;,javascript,jquery,html,dom,html-table,Javascript,Jquery,Html,Dom,Html Table,我无法理解当单击同一行中的按钮时,如何获取表内spanid值和span文本 我的html代码是 <div> <table id="t1" style="border:1px solid"> <tr><td><span id="city">Chikago</span></td><td><span>USA</span></td><td>

我无法理解当单击同一行中的按钮时,如何获取表内spanid值和span文本

我的html代码是

<div>
<table id="t1" style="border:1px solid">       
    <tr><td><span id="city">Chikago</span></td><td><span>USA</span></td><td><button class="show">Show me</button></td></tr>
    <tr><td><span id="city">London</span></td><td><span>UK</span></td><td><button class="show">Show me</button></td></tr>
    <tr><td><span id="city">Delhi</span></td><td><span>INDIA</span></td><td><button class="show">Show me</button></td></tr>

</table>

Chikagoushaw我
伦敦给我看看
DelhiINDIAShow我

使用jquery,我试图在单击第二行的按钮时获取2bd行第二列的值,但我不知道如何选择tanle roes,columns data

这就是我不能编写jquery代码的原因


请为此问题提供正确的jquery代码。

您需要将每个id作为唯一的值-所有这些跨度都具有相同的id并会导致问题-我建议使用数据属性,这些属性可能与城市名称位于相同的td中,如下所示:

<td data-id="city">Chikago</td>
Chikago

然后单击按钮-您需要获取一个td的数据属性和文本。

您需要将每个id作为唯一值-所有这些跨度都具有相同的id,并且会导致问题-我建议使用数据属性,该属性可能与城市名称位于相同的td中,如下所示:

<td data-id="city">Chikago</td>
Chikago

然后单击按钮-您需要获得一个td的数据属性和文本。

请记住,每个文档只能有一个id。这样想吧

:根据元素的特征对元素进行分类

id
:是元素的唯一标识徽章。它可以说“嘿,我是158493号元素,我为此感到自豪!”

继续,在分类为
show
的元素上侦听
单击
事件。要查找实际的城市名称,必须遍历DOM。首先使用
prev()
获取父对象,然后获取其哥哥。这将获得上一个
td
元素。现在向下遍历到它的子元素,即跨度元素

希望这有帮助

$(.show”)。在(“单击”,函数(){
var cityValue=$(this.parent().prev().find(“span”).html();
$(“#城市价值”).html(城市价值);
})

亲吾
美国
给我看
伦敦
英国
给我看
德里
印度
给我看

请记住,每个文档只能有一个id。这样想吧

:根据元素的特征对元素进行分类

id
:是元素的唯一标识徽章。它可以说“嘿,我是158493号元素,我为此感到自豪!”

继续,在分类为
show
的元素上侦听
单击
事件。要查找实际的城市名称,必须遍历DOM。首先使用
prev()
获取父对象,然后获取其哥哥。这将获得上一个
td
元素。现在向下遍历到它的子元素,即跨度元素

希望这有帮助

$(.show”)。在(“单击”,函数(){
var cityValue=$(this.parent().prev().find(“span”).html();
$(“#城市价值”).html(城市价值);
})

亲吾
美国
给我看
伦敦
英国
给我看
德里
印度
给我看

您应该使用和来获取同一行中的跨度。另外,不要在HTML元素中重用
id
s

$(.show”)。在(“单击”,函数(){
var spans=$(this).tr.find(“span”);
var city=span.eq(0.text();
var country=span.eq(1.text();
console.log(城市、国家);
});

Chikagoushaw我
伦敦给我看看
DelhiINDIAShow我
您应该使用和来获取同一行中的跨距。另外,不要在HTML元素中重用
id
s

$(.show”)。在(“单击”,函数(){
var spans=$(this).tr.find(“span”);
var city=span.eq(0.text();
var country=span.eq(1.text();
console.log(城市、国家);
});

Chikagoushaw我
伦敦给我看看
DelhiINDIAShow我

。。。或或者您是否已经为按钮编写了单击事件?--如果是,请分享。我不认为你能指望好人来做你所有的工作!您是否已经为按钮编写了单击事件?--如果是,请分享。我不认为你能指望好人来做你所有的工作!