0

テキストエリアを更新するコードを用意します。

var input_baseprice = $('.active .input_baseprice').html();

$('[name=baseprice]').html(input_baseprice);

ただし、要素が多い場合.input_baseprice、textareaは最初の要素からのみコンテンツを取得します。

input_baseprice*の作成を自動化して取得するにはどうすればよいですか?

$('[name=baseprice]').html(input_baseprice + '<br>' + input_baseprice2 + '<br>' + input_baseprice3 ...);

4

5 に答える 5

3

これは、APIノートhttp://api.jquery.com/html/に記載されています。

以下のコンテンツを取得するため

これを試して

var html = '';

$('.active .input_baseprice').each( function () {
    html += $( this ).html();
});

$('[name=baseprice]').html( html );

質問を読み直した後、扱っている要素のタイプによっては、私たち.html()を交換する必要があるかもしれません.val()

于 2013-01-25T06:31:22.337 に答える
2

.mapメソッドを使用して、それらを結合します。

$('[name=baseprice]').html($('.active .input_baseprice').map(function() {
  return $(this).html();
}).get().join('<br>'));
于 2013-01-25T06:34:59.713 に答える
1

それぞれを使用して、textareaコンテンツをループします....val()動作するはずですこれを試してください

var str="";

$('.active .input_baseprice').each(function(){
      str += $(this).val();
 });

$('[name=baseprice]').val( str);

また

配列内..

var temparray= [];

$('.input_baseprice').each(function(){
   temparray.push($(this).html());
}

 $('[name=baseprice]').html(temparray.join('<br>'));
于 2013-01-25T06:32:19.533 に答える
1

each()関数を使用して、各要素をループし、データを配列に追加します。配列は、文字列に結合されます。

var data = [];

$('.input_baseprice').each(function(){
    data.push($(this).html());
}

$('[name=baseprice]').html(data.join('<br>'));
于 2013-01-25T06:33:10.860 に答える
0

次の方法で配列を作成することもできますjQuery.makeArray()

 var arr = jQuery.makeArray(elements);
于 2013-01-25T06:31:52.797 に答える