Javascript 获取表id

Javascript 获取表id,javascript,jquery,html-table,Javascript,Jquery,Html Table,我正在使用jQuery,我的目标是获取下一个表的id。我将在这里简化代码: 简化的HTML如下所示: <div> <img src="png.png" class="exportIcon" alt='' onClick="tableExport()"> <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></t

我正在使用jQuery,我的目标是获取下一个表的id。我将在这里简化代码:

简化的HTML如下所示:

<div>
   <img src="png.png" class="exportIcon" alt='' onClick="tableExport()">
   <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></table>
</div>

然后我有以下功能:

<script>
    function tableExport(){
        tableID = $(this).next('table').attr("id");
        alert(tableID);
    }
</script>
<div>
   <img src="png.png" class="exportIcon" alt='' onClick="tableExport(this)">
   <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></table>
</div>

函数tableExport(){
tableID=$(this.next('table').attr(“id”);
警报(tableID);
}

但是警报说“未定义”,事实上我甚至不能对桌子做任何事情,我试着把它藏起来,等等。它就是找不到。我还尝试将
next()
替换为
closest()
,但仍然得到了相同的结果。我需要做的是,在调用函数时,始终从该元素(单击图像/按钮)获取最接近的下表的id。

这里有一种方法可以完成您想要的操作-将该元素作为参数传递给tableExport函数:

<script>
    function tableExport(){
        tableID = $(this).next('table').attr("id");
        alert(tableID);
    }
</script>
<div>
   <img src="png.png" class="exportIcon" alt='' onClick="tableExport(this)">
   <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></table>
</div>

然后,在jQuery选择器中使用它:

<script>
    function tableExport(element){
        tableID = $(element).next('table').attr("id");
        alert(tableID);
    }
</script>

函数表导出(元素){
tableID=$(元素).next('table').attr(“id”);
警报(tableID);
}

这里有一种方法可以实现您想要的功能—将元素作为参数传递给tableExport函数:

<script>
    function tableExport(){
        tableID = $(this).next('table').attr("id");
        alert(tableID);
    }
</script>
<div>
   <img src="png.png" class="exportIcon" alt='' onClick="tableExport(this)">
   <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></table>
</div>

然后,在jQuery选择器中使用它:

<script>
    function tableExport(element){
        tableID = $(element).next('table').attr("id");
        alert(tableID);
    }
</script>

函数表导出(元素){
tableID=$(元素).next('table').attr(“id”);
警报(tableID);
}

这里有一种方法可以实现您想要的功能—将元素作为参数传递给tableExport函数:

<script>
    function tableExport(){
        tableID = $(this).next('table').attr("id");
        alert(tableID);
    }
</script>
<div>
   <img src="png.png" class="exportIcon" alt='' onClick="tableExport(this)">
   <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></table>
</div>

然后,在jQuery选择器中使用它:

<script>
    function tableExport(element){
        tableID = $(element).next('table').attr("id");
        alert(tableID);
    }
</script>

函数表导出(元素){
tableID=$(元素).next('table').attr(“id”);
警报(tableID);
}

这里有一种方法可以实现您想要的功能—将元素作为参数传递给tableExport函数:

<script>
    function tableExport(){
        tableID = $(this).next('table').attr("id");
        alert(tableID);
    }
</script>
<div>
   <img src="png.png" class="exportIcon" alt='' onClick="tableExport(this)">
   <table class="table tablesorter" id="tableHourlyT"><tr><td></td></tr></table>
</div>

然后,在jQuery选择器中使用它:

<script>
    function tableExport(element){
        tableID = $(element).next('table').attr("id");
        alert(tableID);
    }
</script>

函数表导出(元素){
tableID=$(元素).next('table').attr(“id”);
警报(tableID);
}

不应使用onClick属性,而应使用jQuery事件处理程序:

$(“.exportIcon”)。单击(表格导出)//每当单击导出图标时,将tableExport绑定为处理程序 函数tableExport(){…} 以这种方式绑定事件时,您会发现$(this)被正确地设置为单击的元素


(我用演示中的按钮替换了img,但效果相同。)

您不应该使用onClick属性,而应该使用jQuery事件处理程序:

$(“.exportIcon”)。单击(表格导出)//每当单击导出图标时,将tableExport绑定为处理程序 函数tableExport(){…} 以这种方式绑定事件时,您会发现$(this)被正确地设置为单击的元素


(我用演示中的按钮替换了img,但效果相同。)

您不应该使用onClick属性,而应该使用jQuery事件处理程序:

$(“.exportIcon”)。单击(表格导出)//每当单击导出图标时,将tableExport绑定为处理程序 函数tableExport(){…} 以这种方式绑定事件时,您会发现$(this)被正确地设置为单击的元素


(我用演示中的按钮替换了img,但效果相同。)

您不应该使用onClick属性,而应该使用jQuery事件处理程序:

$(“.exportIcon”)。单击(表格导出)//每当单击导出图标时,将tableExport绑定为处理程序 函数tableExport(){…} 以这种方式绑定事件时,您会发现$(this)被正确地设置为单击的元素

(我用一个演示按钮替换了你的img,但它的工作原理是一样的。)

还可以使用:

var tableID = $(element).next('table').attr("id");
相反:

tableID = $(element).next('table').attr("id");
不带var前缀的变量将在全局范围内定义

也可使用:

var tableID = $(element).next('table').attr("id");
相反:

tableID = $(element).next('table').attr("id");
不带var前缀的变量将在全局范围内定义

也可使用:

var tableID = $(element).next('table').attr("id");
相反:

tableID = $(element).next('table').attr("id");
不带var前缀的变量将在全局范围内定义

也可使用:

var tableID = $(element).next('table').attr("id");
相反:

tableID = $(element).next('table').attr("id");

不带var前缀的变量将在全局范围内定义,这是因为
在函数中没有意义。您必须从某处使用jquery选择器开始。例如,使用
$('table')
让jQuery选择所有表,然后请求sed table的id。可能的重复不需要在每个图像上都使用事件处理程序:对于所有图像/表(如果重复相同的HTML结构),这应该足够了:这是因为
这个
在函数中没有意义。您必须从某处使用jquery选择器开始。例如,使用
$('table')
让jQuery选择所有表,然后请求sed table的id。可能的重复不需要在每个图像上都使用事件处理程序:对于所有图像/表(如果重复相同的HTML结构),这应该足够了:这是因为
这个
在函数中没有意义。您必须从某处使用jquery选择器开始。例如,使用
$('table')
让jQuery选择所有表,然后请求sed table的id。可能的重复不需要在每个图像上都使用事件处理程序:对于所有图像/表(如果重复相同的HTML结构),这应该足够了:这是因为
这个
在函数中没有意义。您必须从某处使用jquery选择器开始。例如,使用
$('table')
让jQuery选择所有表,然后请求sed table的id。可能的重复不需要在每个图像上都使用事件处理程序:对于所有图像/表(如果重复相同的HTML结构),这应该足够了:很抱歉,我已经删除了注释。事实上,这就可以了。很抱歉,我已经删除了评论。事实上,这就可以了。很抱歉,我已经删除了评论。事实上,这就可以了。很抱歉,我已经删除了评论。事实上,这将起到作用。