[英]How to get Previous textbox value when click on <a>?
下面是我的代码,当我点击同一div中的<a>
时,我试图获得上面文本框的值。 我的意思是说,如果我点击第二个“添加到购物车”链接,它将根据我的截图给我“test2”。
<html>
<head>
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$( document ).ready(function() {
$(".ProductActionAdd a").click(function(){
alert($('.ProductActionAdd a').prevAll(".ProductActionAdd a:first").attr('value'));
})
});
</script>
</head>
<body>
<div class="ProductActionAdd">
<input type="text" value=""/>
<a class="button" href="#">Add To Cart</a>
</div>
<div class="ProductActionAdd">
<input type="text" value=""/>
<a class="button" href="#">Add To Cart</a>
</div>
<div class="ProductActionAdd">
<input type="text" value=""/>
<a class="button" href="#">Add To Cart</a>
</div>
</body>
</html>
但没有成功。
请建议我解决方案。
您可以使用prev()来获取textbox
$( document ).ready(function() {
$(".ProductActionAdd a").click(function(){
alert($(this).prev().val());
alert($('.ProductActionAdd a').prevAll(".ProductActionAdd a:first").attr('id'));
});
});
描述:获取匹配元素集中每个元素的前一个兄弟,可选择通过选择器, 引用进行过滤。
给定一个表示一组DOM元素的jQuery对象,.prev()方法在DOM树中搜索每个元素的前任,并从匹配元素构造一个新的jQuery对象。
该方法可选地接受可以传递给$()函数的相同类型的选择器表达式。 如果提供了选择器,则将通过测试前一个元素是否与选择器引用相匹配来过滤前一个元素。
$(".ProductActionAdd a").click(function(){
alert($(this).closest(':input').val());
});
试试这个
$(".ProductActionAdd a").click(function(){
alert($(this).prev().val());
})
试试这个
$(".ProductActionAdd a").click(function(){
alert($(this).closest('div').find('input').attr('id'));
});
检查一下:
$(".ProductActionAdd a").click(function(){
$(this).prev("input[type=text]").val();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.