HTML中js操作table


一、獲取每一個tr

1、通過table的id獲取,如id="tables"

 獲取第一行tr,索引從0開始,用eq(),方法里面的索引可以手動更換,如第二行就是1,也可以循環tr,eq里面就是循環變量

 $("#tables tr").eq(0);
//遍歷每一行

  for (var i = 0; i < $("#tables tr").length; i++) {
    $("#tables tr").eq(i);
  }

 

2、通過tbody獲取tr,id="tbodys",aa的值可自行設置相應的索引,關鍵字“find”,子級

 

$("#tbodys").find('tr').eq(aa);

 

 

3、獲取操作本行tr,如果tr內部某個元素要操作本行,比如行內刪除按鈕或者編輯按鈕,<input type="text"   onclick="TrDemo(this);" />,

這里建議將點擊事件寫在標簽內部,傳this過去,靜態行可以直接在js中寫點擊事件,用$(this)操作,動態行這樣是無效的,必須在標簽內部傳this,才可以操作,關鍵字:“closest

 

function TrDemo(temp) { $(temp).closest('tr') }

 

 

4、獲取上一行tr,關鍵字:prev 上一行

 

$(this).closest('tr').prev()

 

 

5、獲取下一行tr,關鍵字:next 下一行

$(this).closest('tr').next()

 

 

6、獲取最后一行tr,關鍵字last這里用tbody操作示例,id="tbodys"

 

$("#tbodys").find('tr:last')

 

 

二、td的操作獲取方式

  td是通過tr獲取,tr的操作根據上面所述,這里就不詳細寫tr的操作,用$("#tr")代替

1、獲取一行中每一個td,關鍵字“children”

$("#tr").children('td').eq(aa)//aa可以設置任何自己需要的索引值 //遍歷td
for (var i=0;i<$("#tr").children('td').length;i++){ $("#tr").children('td').eq(i) }

 

2、獲取td里面的值

//如果td內部沒有子級,那直接獲取td值是text(),aa可以自行設置自己所需td的索引值
$("#tr").children('td').eq(aa).text();

//如果內部有子級,可根據所要獲取的層級,用find('#id')/find('.class')獲取,id和class可根據自己設置的填寫
//比如獲取第一個td里面文本框的值,id="txt"
$("#tr")
.children('td').eq(0).find('#txt').val();

 

3、操作行內元素,表格里面的元素也是可以根據上面方法獲取並操作的,具體操作在獲取到之后和普通jquery操作一樣

     這里舉例隱藏td內的某個表單元素和設為只讀,文本框id="txt"

//隱藏
$("#tr").children('td').eq(aa).find('#txt').css("display","none");
//只讀
$("#tr").children('td').eq(aa).find('#txt').attr("disabled","disabled");

 

三、添加/刪除tr,關鍵字:添加(prepend, append),刪除(remove)

tr的刪除也是可以按照上面所述的tr操作中,獲取某一行的上一行或者下一行或者本行進行刪除,這里用$("#tbodys")代表tbody,$("#tr")代表要操作的行,

//添加
//先將要添加行的html代碼拼接好,賦值到變量中,這里我就不拼接了,用trhtml代替
var tr=trhtml;
//插入在第一行之前,成為首行
$("#tbodys").prepend(tr);
 
         
//插入到末尾最后一行
$("#tbodys").append(tr);

//刪除行
$("#tr").remove();

 

四、合並行,合並列

1、合並列:colspan,在td/th標簽里使用此屬性合並相應數量單元格,合並的數量就是colspan的賦值,如colspan="2"

2、合並行:rowspan,在td標簽里使用此屬性合並相應數量單元格,合並的數量就是rowspan的賦值,如rowspan="2"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM