2

jqueryで動的に作成された複数のテキストボックス値を取得するにはどうすればよいですか

サンプルコード:

<?php
$i=1;
while($i<10)
{
     echo "<input type='textbox' class='qty' id='qty_$id'>";
     echo "<input type='textbox' class='item' id='item_$id'>";
     $i++;
}
echo '<input class="btn_transaction" id="btn_update" type="button" style="width:auto" value="Update">';


?>

jquery

<script>
jQuery(document).ready(function(e){
  $("#btn_update").click(function() {
        $.each($('.qty'), function() {
        var qty =  $(this).val();
        alert(qty);  // im getting qty here. In the same way i want item also, how to get item value here
        jQuery.post('../ajax/ajax_cart.php',{section:'update_tocart',qty:qty},function(data){

        });             
     });

  });

});            
</script>

前もって感謝します :)

4

6 に答える 6

3

デモ

これを試して

$("#btn_update").click(function() {
        $(".qty").each(function() {
           var qty =  $(this).val();
           alert(qty);      
     });

  });

これが役に立てば幸いです、ありがとう

于 2013-08-23T13:45:03.247 に答える
0

.next()のようにしてみてください

var item = $(this).next('.item').val();

だからそうなるだろう

$('.qty').each(function() { // Or     $.each('.qty' , function() {
    var qty =  $(this).val();
    var item = $(this).next('.item').val();
 });

FIDDLEFIDDLE2を見る

于 2013-08-23T12:48:50.173 に答える
0

これを試して

$.each($('.qty'), function() {
    var qty =  $(this).val();
    var item = $(this).siblings('input.item').val();
});
于 2013-08-23T12:56:01.023 に答える
0

試す

$('.qty').each(function() { 

var qty =  $(this).val();
var item =  $(this).closest('.item').attr('value'); })
于 2013-08-23T13:05:53.643 に答える
0
jQuery(document).ready(function(e){
$("#btn_update").click(function() {
    var data = {};
    $( "input" ).each(function() {
        data[$(this).attr('id')] = $(this).val();
        jQuery.post('../ajax/ajax_cart.php',{section:'update_tocart',data:data},function(data){

        });             
    });
});

});

上記をお試しください!! すべての入力要素を見つけることができます! 次に、それを json オブジェクトに格納して、ajax 呼び出しに渡すことができます。

于 2013-08-23T12:53:58.397 に答える
0

テキストボックスなど、すべてのテキストボックスにクラスを追加します

<script type="text/javascript">
    var Work = [];
var textboxes = document.getElementsByClassName('name_list');
var boxlengt = document.getElementsByClassName('name_list').length;
for(var i=0;i<boxlengt;i++){
    Work.push(textboxes[i].value)
}
Work = Work.toString();
</script>

すべての値が items 配列に格納されています。各値をどのように使用するかは、あなた次第です。

于 2013-08-23T13:12:16.240 に答える