2014-11-02 24 views
-1

我有一个表单,它有一个价格输入,我想根据它下面的选项进行修改。使用Jquery遍历DOM来查找输入并根据数据属性修改值

所以,当有人点击<a class="price_option" data-price="xxx" ... >,数据价格的值将被输入到输入尊域(<input class="form-control price_dozen" ...

下面是HTML代码。有人可以帮忙吗?

<div class="form-group"> 
     <label for="price_dozen">Price (Dozen)</label> 
     <div class="input-group col-xs-7"> 
      <input class="form-control price_dozen" type="text" value="300"> 
      <div class="input-group-addon">/ lusin</div> 
     </div> 
     <a class="price_option" data-price="250" href="#">250</a> , <a class="price_option" href="#">300</a> , <a href="#" class="price_option">320</a> 
    </div> 

    <div class="form-group"> 
     <label for="price_dozen">Price (Dozen)</label> 
     <div class="input-group col-xs-7"> 
      <input class="form-control price_dozen" type="text" value="300"> 
      <div class="input-group-addon">/ lusin</div> 
     </div> 
     <a class="price_option" data-price="250" href="#">250</a> , <a class="price_option" href="#">300</a> , <a href="#" class="price_option">320</a> 
    </div> 

    <div class="form-group"> 
     <label for="price_dozen">Price (Dozen)</label> 
     <div class="input-group col-xs-7"> 
      <input class="form-control price_dozen" type="text" value="300"> 
      <div class="input-group-addon">/ lusin</div> 
     </div> 
     <a class="price_option" data-price="250" href="#">250</a> , <a class="price_option" href="#">300</a> , <a href="#" class="price_option">320</a> 
    </div> 
+3

到目前为止你有什么? jQuery [遍历文档](http://api.jquery.com/category/traversing/)非常完整,并且这些方法非常易于理解和使用。 – 2014-11-02 16:53:55

回答

1

试试这个

$(function(){ 
    $(".price_option").on("click",function(e){ 
    $(this).prev().find(".form-control").val($(this).attr("data-price")); 
    }); 
}); 

但作为建议你应该尝试使用非常简单没有废话jQuery方法对自己的穿越。 PS:根据您的具体要求进行修改。

+0

仅适用于第一个链接。所以我使用了以下代码: $(this).parent()。find(“。form-control”)。val($(this).attr(“data-price”)); – Roy 2014-11-03 12:27:34

+0

很酷...多数民众赞成什么jquery是..享受:) – 2014-11-04 06:43:07