2

問題について多くの回答が見つかりましたが、問題は解決されていません

私はデータを含むテーブルを持っています、例:

<table>
    <tr>
        <td class="editable"> <a id="query" href="#"> Data 1 </a> </td>
        <td class="editable"> <a id="text"  href="#"> Data 2 </a> </td>
        <td class="editable"> <a id="foo"   href="#"> Data 3 </a> </td>
        <td class="editable"> <a id="bar"   href="#"> Data 4 </a> </td>
    </tr>
    <tr>
        <td class="editable"> <a id="query" href="#"> Data 1 </a> </td>
        <td class="editable"> <a id="text"  href="#"> Data 2 </a> </td>
        <td class="editable"> <a id="foo"   href="#"> Data 3 </a> </td>
        <td class="editable"> <a id="bar"   href="#"> Data 4 </a> </td>
    </tr>
</table>

私は欲しい:

このテーブルの各行について、現在の行で id="query" と id="foo" を持つリンクの値を取得し、ajax クエリを送信します

私はこれをしようとします:

    $("#detect_rel").click(function(){
        $('tr').each(function() {
            // ajax to: ajax.php?query=xxxx&data=&xxxxx
        });
    });

しかし、現在の行の両方の内部テキストを取得できませ<a id="query"...<a id="foo"...

私はこのようなことを試しました:

$('tr').each(function() {
    var cols = $('.1, .2', this);
    // do something with cols
});

<a id="query"...しかし、現在の行の内部テキストと<a id="foo"...両方を取得できないため (js の知識が足りない)、役に立ちません。

擬似コード:

行を取得

get value of link in column_one and column_two

send ajax query

次の行を取得

注:<a href...「bootstrap x editable」に必要な各セルで、そのため、各リンクでIDを使用する必要があります


問題は解決しました、ありがとう

4

1 に答える 1

5

HTML では ID は一意である必要がありますが、クラスはページ内で複数回発生する可能性があります。あなたが求めることを行うには、HTML は次のようになります。

<table>
    <tr>
        <td class="editable"> <a class="query" href="#"> Data 1 </a> </td>
        <td class="editable"> <a class="text"  href="#"> Data 2 </a> </td>
        <td class="editable"> <a class="foo"   href="#"> Data 3 </a> </td>
        <td class="editable"> <a class="bar"   href="#"> Data 4 </a> </td>
    </tr>
    <tr>
        <td class="editable"> <a class="query" href="#"> Data 1 </a> </td>
        <td class="editable"> <a class="text"  href="#"> Data 2 </a> </td>
        <td class="editable"> <a class="foo"   href="#"> Data 3 </a> </td>
        <td class="editable"> <a class="bar"   href="#"> Data 4 </a> </td>
    </tr>
</table>

そして、jQuery コードは次のようにする必要があります。

$('#detect_rel').click(function() {
    $('tr').each(function(i, el) {
        var query = $(el).children('td').children('.query').text();
        var text = $(el).children('td').children('.text').text();
        //$.ajax (do your AJAX call here using values of query and text
    });
});

このコードを JSFiddle でテストしたところ、動作しました。

デモ: http://jsfiddle.net/Pt2Vd/

于 2013-07-09T23:38:01.910 に答える