javascript - 遍歷修改<td>標籤
仅有的幸福
仅有的幸福 2017-07-05 10:57:16
0
3
863

jquery版本:1.8
原始程式碼

<tr>
<td>1</td>
<td>11,12</td>
</tr>
<tr>
<td>2</td>
<td>21,22</td>
</tr>

改成

<tr>
<td>1</td>
<td><a>11</a><a>12</a></td>
</tr>
<tr>
<td>2</td>
<td><a>21</a><a>22</a></td>
</tr>

嘗試給<td>11,12</td>加入id="img",但是$("#img").eq(1).html()無法取得到第二行的內容.

for(var i=0; $("#img").length; i++){
   //$("#img").eq(i).html需要非空判断
    var arr= $("#img").eq(i).html.spilt();
    var str;
    for(var j=0; aar.length; j++){
        str = "<a>"+arr[j]+"</a>";
    }
    $("#img").eq(i).html(str);
}

jQuery不是很熟,一些文法錯誤希望大手幫忙改正,給大手們添麻煩了.

仅有的幸福
仅有的幸福

全部回覆(3)
阿神

不知道你明不明確一點,id是唯一的,一個html代碼頁同樣的id名稱只能有一個!所以$("#img").eq(1)這樣的程式碼絕對不符合規範。

目測你的程式碼把添加id改為添加類別class後這樣是沒有問題的,另外可以使用jquery的each方法來遍歷dom節點:

var $img = $('.img');'
$img.each(function(index,item){
    var aar = $(item).text().split(','),
       str = '';
    arr.forEach(function(item1,index1){
        str = "<a>"+item1+"</a>";
    });
   $(item).html(str);
});
滿天的星座

雷雷

刘奇

id只能是唯一的哦,只能取到第一個值,所以要用class

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>test</title>
    <script type="text/javascript" src="https://cdn.bootcss.com/jquery/2.2.3/jquery.min.js"></script>
<body>
  <table>
    <tr>
      <td>1</td>
      <td>11,12</td>
    </tr>
    <tr>
      <td>2</td>
      <td>21,22</td>
    </tr>
   </table>
</body>
<script type="text/javascript">
$(function () {
  $('tr').each(function(){
    $(this).addClass("img");    // 这里加入class
    var dom = $(this).find("td").eq(1);
    dom.each(function () {
    var arr = $(this).html().split(",");
    var len = arr.length;
    var str = '';
    for (let i = 0; i < len; i++) {
        str += '<a>' + arr[i] + "</a>"
    }
    console.log($(this), len, str);
    $(this).html(str);
  });
});

  // 这里你可以输出来看看
  console.log($(".img").eq(1).html())
})
</script>
</html>
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!