0

Jqueryを使用していくつかのリストを作成しています。1 つのテキスト ボックスがあります。ユーザーはいくつかのデータを提供します。ユーザーが Button を押すたびに、そのデータがコピーされ、div に追加されます。

$("#Add").click(function(){
   var val = $('[name=Variablename]').val();
     var masterHTML = '<input type="checkbox" name="'+val+'">'+val+'   '+val+'  '+'<br>';
                $("#main").append( masterHTML);
          });   

リストは大きくなる可能性があります例:

sampletext1
sampletext2
sampletext3
sampletext4
sampletext5
sampletext6

それぞれの横にチェックボタンがあります。これはすべて動的データであるためです。したがって、ユーザーがチェックするときは、sampletext1と言います。どうすればそのデータを取得できますか。基本的に、ユーザーがsampletext1をsampletext1updateに更新して投稿できるように、テキストボックスにそのデータを表示することを検討しています。

どうやってやるの 。テーブル (または) フォームを使用していません。divとチェックボタンでテキストを追加するだけです

divのメインは次のとおりです。

<div id="main">
</br>
</div>
4

1 に答える 1

1

1つの方法...動的に生成されたすべてのチェックボックスにクラス(同じクラス)を与えます..言うcheckboxClass...そしてそのためにクリックイベントを呼び出します

$('#main').on('change','.checkboxClass',function(){
   if($(this).is(':checked')){
       alert($(this).val());
    }
   });

これを機能させるには、チェックボックスの属性を定義する必要がありますvalue(上記のコードにはありません)...これはチェックボックスであるため、ユーザーは複数を選択できます...それについて考えたことはありますか..??

更新しました

次に、同じクラスのチェックボックスとともにボタンを動的に作成します..非表示にします...

 $("#Add").click(function(){
     var val = $('[name=Variablename]').val();
     var masterHTML = '<input class="checkboxClass" type="checkbox" value="'+val+'" name="'+val+'">'+val+'   '+val+'  '+ '<button class="buttonClass">update</button><br>';
     $("#main").append( masterHTML);
      $('.buttonClass').hide(); //hide button
  });   


  $('#main').on('change','.checkboxClass',function(){
    $('.buttonClass').hide(); //make sure all other button is hidden
    if($(this).is(':checked')){ //<--here missed bracket
        $(this).next('.buttonClass').show(); //show the button that is just clicked
    }
   });

  //code to update on click of button
  $('#main').on('click','.buttonClass',function(){
       $('#yourtextBoxId').val($(this).prev().val());
  });
于 2013-04-30T17:35:12.350 に答える