【问题标题】:Get HTML table column values in array获取数组中的 HTML 表格列值
【发布时间】:2017-04-21 04:38:08
【问题描述】:

我有这个 HTML 表格标记

    <table id="tblPtPrtDtl">
  <tbody><tr>
    <th>File Number</th>
    <th>Name</th>
    <th>Status</th>
  </tr>
  <tr>
  <td id="prfn"><button id='prtfilenum' type='button' ">3344</button></td>
    <td>Maria Anders</td>
    <td>Germany</td>
  </tr>
  <tr>
   <td id="prfn"><button id='prtfilenum' type='button' ">4323</button></td>
    <td>Francisco Chang</td>
    <td>Mexico</td>
  </tr>
  <tr>
    <td id="prfn"><button id='prtfilenum' type='button' ">3466</button></td>
    <td>Roland Mendel</td>
    <td>Austria</td>
  </tr>
  <tr>
   <td id="prfn"><button id='prtfilenum' type='button' ">5432</button></td>
    <td>Helen Bennett</td>
    <td>UK</td>
  </tr>
  <tr>
  <td id="prfn"><button id='prtfilenum' type='button' ">3455</button></td>
    <td>Yoshi Tannamuri</td>
    <td>Canada</td>
  </tr>
  <tr>
   <td id="prfn"><button id='prtfilenum' type='button' ">4563</button></td>
    <td>Giovanni Rovelli</td>
    <td>Italy</td>
  </tr>
</tbody></table>

如何使用 map 函数获取数组中列(文件编号)的值?

我尝试了以下代码,但我得到了空数组,知道为什么吗?

 var arr = [];
        $("#tblPtPrtDtl tr").each(function () {
            arr.push($(this).find($('tr:not(:first)')).text()); //put elements into array

        });

【问题讨论】:

  • 到目前为止你尝试了什么??
  • 更具体
  • 我给了列一个 id 并且我使用了这个代码 var r = $("#tblPtPrtDtl #prfn").text(); alert(r) 我得到了所有的值,但是我如何将它们推送到数组中
  • stackoverflow.com/questions/12752834/… .. 记住不要重复 ID .. ID 应该是唯一的
  • 完美,如何避免header

标签: jquery arrays html-table


【解决方案1】:

试试看

var col_Array = $('#tableid td:nth-child(3)').map(function(){
       return $(this).text();
   }).get()​;

【讨论】:

    【解决方案2】:

    var arr = $('#tblPtPrtDtl tr').find('td:first').map(function(){
     return $(this).text()
    }).get()
    
    function readval(){
    alert(arr)
    }
    <table id="tblPtPrtDtl ">
      <tbody><tr>
        <th>File Number</th>
        <th>Name</th>
        <th>Status</th>
      </tr>
      <tr>
      <td id="prfn "><button id='prtfilenum' type='button' ">3344</button>
    </td>
    <td>Maria Anders</td>
    <td>Germany</td>
    </tr>
    <tr>
      <td id="prfn"><button id='prtfilenum' type='button' ">4323</button></td>
        <td>Francisco Chang</td>
        <td>Mexico</td>
      </tr>
      <tr>
        <td id="prfn "><button id='prtfilenum' type='button' ">3466</button>
      </td>
      <td>Roland Mendel</td>
      <td>Austria</td>
    </tr>
    <tr>
      <td id="prfn"><button id='prtfilenum' type='button' ">5432</button></td>
        <td>Helen Bennett</td>
        <td>UK</td>
      </tr>
      <tr>
      <td id="prfn "><button id='prtfilenum' type='button' ">3455</button>
      </td>
      <td>Yoshi Tannamuri</td>
      <td>Canada</td>
    </tr>
    <tr>
      <td id="prfn">
        <button id='prtfilenum' type='button' ">4563</button></td>
        <td>Giovanni Rovelli</td>
        <td>Italy</td>
      </tr>
    </tbody></table>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <button id='Get' type='button' onClick= "readval();return false " >Get Vals</button>
    <table id="tblPtPrtDtl" >
        <tbody>
       <tr>
         <th>File Number</th>
         <th>Name</th>
        <th>Status</th>
        </tr>
      <tr>
      <td id="prfn "><button id='prtfilenum' type='button' ">3344</button>
      <td>Maria Anders</td>
    <td>Germany</td>
    </td>
      </tr>
      <tr>
    <td id="prfn"><button id='prtfilenum' type='button' ">4323</button></td>
        <td>Francisco Chang</td>
        <td>Mexico</td>
      </tr>
    </tbody>
    </table>

    好的,我找到了获取数组中第一列值的方法

     function gettbldta() {
            var arr = [];
            $("#tblPtPrtDtl tr:not(:nth-child(1))").each(function () {
                arr.push($(this).find("td#prfn:eq(0)").text()); //put elements into array
               arr.shift
            });
            alert(arr)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多