簡體   English   中英

如何使用jQuery從表行中選擇數據

[英]How to select data from a table row with jQuery

我試圖在按行中的輸入按鈕時提取一行中的數據(實際上我只需要一列)。 我用了:

$(document).ready(function() {
  var ttl_emp = $('#no_emp').text();
  var ttl_sal = $('#tl_sal').text();

  $('#wtable').on('click', 'input', function() {
    var rdata = $(this).parents('tr td:nth-child(8)').text();

    alert(rdata);
    ttl_sal = ttl_sal - c_emp_netSal;
    $(this).parents('tr').remove();
    $('#no_emp').text(ttl_emp - 1);
    ttl_emp = ttl_emp - 1;

    $('#tl_sal').text(ttl_sal);
  });
});

但是失敗了,並且控制台提到了未定義的數據。 wtable是表的ID。

作為您的問題,您可以使用此代碼使用jquery從表中的選定行獲取數據。 這是示例代碼,請嘗試理解此邏輯,然后再在代碼中實現。 希望對您有幫助。

描述我們使用.find()函數來獲得對表的正確控制。 因此,如果input類型是文本,則使用.find('input[type="text"]')

eq()是使用索引號查找的函數,因此,如果您的列在表中位於第一位置,則應使用eq(0)獲取表中第一列的值。 此索引號條件適用於所有同級列。

在此代碼中,我們使用.val()textbox獲取值。 如果要從標簽獲取文本,則應使用.text()

這里的邏輯

$(document).ready(function(){
  $('#tableid tr').each(function(){
        var name = $(this).closest('td').find('input[type="text"]').eq(0).val();
  });
});

您的邏輯代碼

$(document).ready(function() {
var ttl_emp = $('#no_emp').text();
var ttl_sal = $('#tl_sal').text();

$('#wtable tr').on('click', function() {
var rdata = $(this).find('td').eq(8).val(); // for label use val() otherwise for textbox use text() for get value

alert(rdata);
ttl_sal = ttl_sal - c_emp_netSal;
$('#no_emp').text(ttl_emp - 1);
ttl_emp = ttl_emp - 1;

$('#tl_sal').text(ttl_sal);
});
});

現場演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM