0

何百回も尋ねられたことは知っていますが、tdおそらく私がjqueryの初心者であるため、以前のものを取得する方法が見つかりません。

これが私のコードです:

findOverdue = function () {
  $("tbody").find("tr").each(function () {
    var paymentDate = $(this).find('td.paymentDate').text();
    var paymentDateTest = $(this).find('td.paymentDate').prev('td').text();
    var currentDate = $(this).find('td.currentDate').text();
    var isInitial = $(this).find('td.isIntial').text();
    var monthlyInstalment = $(this).find('td.monthlyInst').text();
    var penaltySize = $(this).find('td.penaltyPercent').text();
    var lastUpdated = $(this).find('td.lastUpdated').text();

    console.log("paymentDateTest: " + paymentDateTest);
  });
};

今、私は以前のtd値をpaymentDateTest変数に入れようとしていますが、うまくいきません。私はいくつかの組み合わせを試しましたが、成功しませんでした。コンソール ログには何も表示されません。本当に小さなものが欠けていることは知っていますが、それを見つけることができません。

編集:

HTML テーブル:

<table class="dataTable" id="repaymentShedule">
            <thead>
                <tr>
                    <th>1</th>
                    <th>2</th>
                    <th>3</th>
                    <th>3</th>
                    <th>4</th>
                    <th>5</th>
                    <th>6</th>
                    <th>7</th>
                    <th>8</th>
                    <th>9</th>
                    <th style="display: none;">10</th>
                    <th style="display: none;">11</th>
                    <th>12</th>
                </tr>
            </thead>
            <tbody data-bind="foreach: creditDetails">
                <tr>
                    <td class="paymentDate" data-bind="text: dateOfPayment"></td>
                    <td class="startBalance" data-bind="text: beginingBalance"></td>                        
                    <td class="monthlyInt" data-bind="text: monthlyInterest"></td>
                    <td class="principal"><input data-bind="value: princpalPayment"></input></td>
                    <td class="monthlyInst" data-bind="text: monthlyInstallment"></td>
                    <td class="ammountToPay" data-bind="text: ammountToPay"></td>
                    <td class="remainingBalance" data-bind="text: endingBalance"></td>
                    <td class="paid"><input type="checkbox" data-bind="checked: isPaid, disable: isPaid, click: testFunc, value: true"></td> <!-- value: true moje da ne e nujno -->
                    <td class="currentDate" data-bind="text: currentDate"></td>
                    <td class="penalty" data-bind="text: penalty"></td>
                    <td class="isIntial" data-bind="text: isIntial" style="display: none;"></td>    
                    <td class="penaltyPercent" data-bind="text: penaltyPercent" style="display: none;"></td>    
                    <td class="lastUpdated" data-bind="text: lastUpdated"></td>             
                </tr>
            </tbody>
        </table>
4

3 に答える 3

1

私はjsfiddleをすばやく作成しました 、次のように見えます

 alert($('.prevDate').prev('td').text())

は働いている。

于 2013-11-13T08:29:25.677 に答える
1

td の直前にある場合は、これを試してください

var paymentDateTest = $(this).find('td.paymentDate').prev().text();
于 2013-11-13T08:27:10.757 に答える
0

私はこれを探していました:

var paymentDateTest = $(this).prev().find('td.paymentDate').text();

Roko C. Buljan私を助けてくれてありがとう !

于 2013-11-13T10:23:47.957 に答える