我有这样的HTML:
<table>
<caption class="my_caption">Table 1.1: TABLE CAPTION</caption>
<tr>...</tr>
<tr>...</tr>
...
我需要获取标题文本,以便我可以进行一些字符串比较。我尝试过.val(),. text(),. html()和.value,但都没有。
感谢您的帮助。
编辑: 我实际上有一些这些标题。对不起,我早些时候应该提到这个。
<div>
<table>
<caption class="my_caption">Table 1.1</caption>
<tr>...</tr>
<tr>...</tr>
...
</table>
<table>
<caption class="my_caption">Table 1.2</caption>
<tr>...</tr>
<tr>...</tr>
...
</table> </div>
所以我有一个遍历所有标题的for -loop:
var cap_tables = $("caption.my_caption");
for (var i=0;i<cap_tables.length;i++) {
alert(cap_tables[i].text());
//i've tried .text(), .html(), .val(), .value to get the caption text
}
我会再次尝试你的所有建议并回复你们。非常感谢!!!
我使用的是Firefox 3.5.3版本
答案 0 :(得分:7)
$('caption').text();
或
$('.my_caption').text();
答案 1 :(得分:0)
或者,如果您有“table”对象,您的代码可能如下所示:
var myTable = $('table');
var myCaptionText = myTable.find('caption').text();
答案 2 :(得分:0)
这适用于最新的Firefox和IE:
jQuery(function(){
alert( $('caption').html() );
});
不确定为什么它不适合你。
答案 3 :(得分:0)
你应该尝试使用内置的jquery迭代器来遍历每个元素而不是你发布的那个循环。
$("caption.my_caption").each(function(i,val){
alert($(this).text());
});