0

以下のコードは私のDBから作成されているため、同じclasses名前で内容が異なる複数のコードがあります。私がする必要があるのは、ボタンがクリックされたときに、クラス =でdivclass = 'config'の値を取得する必要があることです 。どうすればこれを進めることができますか?['value','type','info']thisthisconfig

$(".config").click(function(){
     var id = $(this).attr('id');
});

何かヒント??

HTML

<div class="mws-form-row bordered">
   <label class="mws-form-label"><?php echo SaleAdmin_Engine::getConfigName($this->result[0]['config_name']) ; ?></label>
      <div class="mws-form-item">
         <b>Value</b> <input type="text" class="value required large" value="<?php echo $this->result[0]['config_value']; ?>">
         <b>Type</b> <input type="text" class="type required  large" value="<?php echo $this->result[0]['config_type']; ?>">
         <b>Info</b>  <textarea rows="" cols="" class="info required  large"><?php echo $this->result[0]['config_info']; ?></textarea>
      </div>
<button class="config btn btn-inverse btn-small" rel="<?php echo $this->result[0]['config_id']; ?>" type="button">Save</button>
</div>
4

3 に答える 3

1

セレクターのthisは、探している要素を持たないボタンを参照しています。これらの要素を取得するには、ボタンが関連付けられている親フォームを取得する必要があります。

$(document).ready(function(){
    $(".config").click(function(){
        var form1 = $(this).parent();           
        var value = form1.find(".value").val();
        var type = form1.find(".type").val();
        var info = form1.find(".info").val();  
    });   
});

これは動作中のjsfiddleです。

于 2013-05-07T15:40:43.453 に答える
0

jQuery クラス セレクターを使用してコレクションを取得し、jQuery マップ関数を使用して一度にすべてを反復処理して値を作成できます。

$(".config").click(function(){
  //Get all items with required class
  var resultArray = $.map($(".required"), function(val){
    return val.value;
  });
  console.log(resultArray);
});

このフィドルで実際にそれを見る

于 2013-05-07T15:40:53.677 に答える