【问题标题】:jquery traverse through row getting span class and titlejquery遍历行获取跨度类和标题
【发布时间】:2012-04-19 18:36:29
【问题描述】:

我有一个表,每行都有一个 id 和几个包含 spans 的 td

例如

<tr id="row"><td><span class="first name">myfirstname<span class="surname">mysurname</span></td><td><span class="street">mystreet</span><span class="town">mytown</span></td>

我不想做的是在传递 rowid 时遍历行并创建跨度类名和跨度值的键值数组。

目前我可以单独找到每个东西,这非常麻烦。

【问题讨论】:

  • 代码不完整,你错过了一个结束标签
  • @DhirajBodicherla 和&lt;/span 在第一个&lt;td&gt; ...

标签: javascript jquery dom-traversal jquery-traversing


【解决方案1】:

你的标记应该稍微修正一下:

<table>
    <tr id="row1">
        <td>
            <span class="first name">myfirstname </span>
            <span class="surname">mysurname</span>
            </td>
                <td>
                    <span class="street">mystreet</span>
                    <span class="town">mytown</span>
        </td>
    </tr>
</table>

您没有关闭&lt;span&gt;&lt;tr&gt;

代码:

function getSpansData(rowId) {
    var map = {};
    $('#' + rowId + ' span').each(function() {
        map[this.className] = this.innerHTML;
    });

    return map;
}

getSpansData('row1');

Live DEMO

【讨论】:

    【解决方案2】:
    function traverseRow(id) {
        var arr = {};
        $('td span', 'tr#' + id).each(function() {
            arr[this.className] = this.innerHTML;
        });
        return arr;
    }
    
    traverseRow('row');
    

    【讨论】:

      【解决方案3】:
      var map = {};
      $("#row_id td span").each(function() { 
        map[$(this).attr("class")] = $(this).html(); 
      });
      

      【讨论】:

      • 你不用假设,问题标签是jQuery!
      • @gdoron 我只是看到了问题而不是标签。但是您的评论是正确的。我已经从答案中删除了这一行。
      【解决方案4】:

      您应该发送代码示例以获得更准确的响应。试试这个:

      var values = new Object();
      $("#row").filter("td span").each(function(){
          values[$(this).attr("class")] = $(this).text();
      });
      alert(values.surname);
      

      【讨论】:

        猜你喜欢
        • 2011-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-25
        • 1970-01-01
        • 2020-05-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多