jQuery-单击时使用类获取单个输入的值

jQuery-单击时使用类获取单个输入的值,jquery,Jquery,这就是我的处境 <div id='cont-qty'></div> <a href="#" class="bottontest">aaa<input class="inp" value="1" /></a> <a href="#" class="bottontest">bbb<input class="inp" value="2" /></a> <a href="#" class="botton

这就是我的处境

<div id='cont-qty'></div>
<a href="#" class="bottontest">aaa<input class="inp" value="1" /></a>
<a href="#" class="bottontest">bbb<input class="inp" value="2" /></a>
<a href="#" class="bottontest">ccc<input class="inp" value="3" /></a>

<script>
var $j = jQuery.noConflict();

$j(document).ready(function(){
$j("a").click(function(){
    $j("#cont-qty").html($j('.inp').val());
        return false;
    });
});
</script>

var$j=jQuery.noConflict();
$j(文档).ready(函数(){
$j(“a”)。单击(函数(){
$j(“#cont qty”).html($j('.inp').val());
返回false;
});
});
当我单击第一个标记或第二个标记时,我希望获取每个输入的值。例如,如果我单击第二个输入,我希望我获取第二个输入的值,依此类推

现在,如果我点击第二个或第三个,它总是只接受第一个输入的值


我该怎么办?

您需要将
$('.inp')
选择器的上下文调整为
,它表示单击的
a

您可以使用:
$('.inp',this)

$(“a”)。单击(函数(){
$(“#cont qty”).html($('.inp',this.val());
});

使用单击的锚(
)的上下文在其中查找输入元素:

$j("a").click(function(){
   $j("#cont-qty").html($j(this).find('.inp').val());
   return false;
});

我不会使用“this”关键字。在编写Javascript时,我尽量避免使用它

            var $j = jQuery.noConflict();

            $j(function(){
                     $j("a").on("click",function(element){
                     $j("#cont-qty").html($j(element.target).find(".inp").val());
                    return false;
                });                             
            })

您的HTML无效。而是使用标签和ID

<label for="input1" class="bottontest">Aaaa<input id="input1" class="inp" value="1" /></label> 

你的代码是非法的。使用
您可以使用
$j(“标签”).on(“单击”,function(){$j(“继续数量”).html($j(“#“+$j(this).attr(“for”).val())
$j("label.bottontest").on("click",function() { 
  $j("#cont-qty").html(
    $j("#"+$j(this).attr("for")).val()
  );
});