9

まず第一に、私の悪い英語で失礼します。

いろいろな方法を試しましたが、まだ運がありません。

.each()メソッドを使用して一連のオブジェクトを返します。

入力フィールドの「value」属性にオブジェクトの各値を入力したいと思います。PHPと同じことをする方法が見つかりませんでした。=

どんなアイデアでも素晴らしいでしょう!

これが私のコードです:

$.each($("input[type='checkbox']:checked"), function(){
        var data = $(this).parent().parent().find("td:eq(1)"); 
         $("#login").val(data.text());
    })
4

2 に答える 2

18

map()を使用できます。delimiter文字をjoin()に渡して、alueを区切ることができます。

text = $("input[type='checkbox']:checked").map( function(){
    return $(this).parent().parent().find("td:eq(1)");        
}).get().join();

$("#login").val(text);
于 2013-02-13T09:55:55.503 に答える
12
var c = '';
$.each($("input[type='checkbox']:checked"), function(){
    var data = $(this).parent().parent().find("td:eq(1)"); 
    c += data.text();
})
$("#login").val(c);

ループでこれを使用することもできます:

$("#login").val($("#login").val(c)+data.text());

しかし、私は個人的にDOMの変更を最小限に抑えることを好みます。

parent().parent()のようなトラバーサルを使用すると、メンテナンスの問題が発生することにも注意してください。あなたの場合、おそらく使用することができます

var data = $(this).closest('tr').find("td:eq(1)"); 

span将来、または他の要素が入力をラップした場合にコードが壊れないようにします。

于 2013-02-13T09:54:51.290 に答える