0

私は完全な JQuery の初心者で、過去 2 日間これを調査してきましたが、今では頭がおかしくなりました。

ここに私が持っているものがあります:

一定量の行を持つテーブル (オンライン ストアのカートなど)

最後の行 (カートの合計が含まれているため) と最初の行 (列ヘッダー) は必要ありません。

ここに私が欲しいものがあります:

ドキュメントの読み込み時に、そのテーブルの各行 (最初と最後を除く) を調べて、(たとえば) 最初の列と最後の列を取得し、それらの値を Web サービスに渡し、Web サービスに値を返させたいと考えています。その行の別の列のテキスト ボックスに入れる

テーブル構造は次のとおりです。

<table id="blahzayblahgrdItems">
<tbody>
<tr>
<td>product</td>
<td>req.ship date</td>
<td>est.ship date(input textbox)</td>
<td>price</td>
<td>qty</td>
<td>subtotal</td>
</td>
</tbody>
</table>

Product 列と QTY 列から値を取得して、webservice に渡し、EST に入力しようとしています。Web サービスから返された内容を含む [Ship Date] 列

コードでは、次のようなことを試しました

$(function()
{
var partID;
var qty;

$("table[id*=grdItems] tbody tr").each(function() {})
)

ただし、実際の数量と製品を Web サービスに渡すことについては、空白を描いています。コードのさまざまなバリエーションを試し、アラート ボックスをスローして何が返されるかを確認しましたが、ヘッダー、テーブル データの一部、完全なテーブル データなどが表示されます。

4

2 に答える 2

0

解析する行ごとにクラスを設定し、これを実行します。

var partID = $("tr.some_class td")[4].text();
var qty = $("tr.some_class td")[5].text();
于 2012-05-22T22:23:20.640 に答える
0

info最初と最後の行(特にスタイリング用)にクラス(のような)を配置して、次のようにする方が少し簡単だと思います。

jsfiddleのjsonエコーを使用した実例でjsfiddleを更新しました:

http://jsfiddle.net/lucuma/fNwvX/3/

// add a class to first and last tr to make formatting a little nicer as well
$('#blahzayblahgrdItems tr:first,#blahzayblahgrdItems tr:last').addClass('info');
// loop over each one except the ones with class
$('#blahzayblahgrdItems tr:not(.info)').each(function() {
    var $prod = $('td:eq(0)', this);
    var $sub = $('td:eq(5)', this);

    var result = $prod.text() + '-' + $sub.text();     // do your ajax with these values
    $.get('ajax/test.html', function(data) {
      $prod.text(data.val1);  // depends on your system
      $sub.text(data.val2);   // depends on your system
    });



});​
于 2012-05-22T22:31:14.217 に答える