在这种情况下如何获取输入文本值

时间:2015-02-19 12:24:53

标签: jquery

当在ADDON按钮上显示时,我试图获取类QtyInput的输入值

我尝试过如下,但我未定义。

$(document).on('click', '.addonsBtn', function(e) {

    var quantity = $(this).find(".QtyInput").val();

    alert(quantity);

});

我甚至试过

var quantity = $(this).closest('.QtyInput').val(); but the same result ??

http://jsfiddle.net/Lv5cn8xy/4/

你能告诉我怎么做吗??

6 个答案:

答案 0 :(得分:3)

使用

var quantity = $(this).closest(".Itm_dtsl").find(".QtyInput").val();

Fiddle

Find将仅搜索子元素。所以你应该得到两个元素的共同父元素。这里的父元素是'Itm_dtsl'。您可以使用nearest()方法获取指定的父级。

答案 1 :(得分:3)

如果只有一个数量类,则只会这样做:

var quantity = $(".QtyInput").val();

这也只是直接选择它而不是使用任何查找调用。

<强> jsFiddle

答案 2 :(得分:1)

您可以使用siblings()功能:

 $(this).siblings('div').find('.QtyInput').val();

jsFiddle Demo

答案 3 :(得分:1)

您可以使用.prev()

var quantity = $(this).prev().find(".QtyInput").val();

演示:Fiddle

答案 4 :(得分:1)

像这样使用:

$(document).on('click', '.addonsBtn', function() {

    var quantity = $(document).find(".QtyInput").val();

    alert(quantity);

});

答案 5 :(得分:0)

$(document).on('click', '.addonsBtn', function(e) {    
   var quantity = 0;
   $(document).find('.QtyInput').each(function(){
       quantity += parseInt($(this).val()); //add all values here
   });    
   alert(quantity);   
});

那应该有用..