我有以下代码。
<div class="container">
<input type="hidden" name="id" value="123" class="id" />
<div class="inner">
<a href="#" class="link">link</a>
</div>
</div>
所以我试图在点击锚标记时获取隐藏的id值。这是我尝试的以下代码,但没有用。
jQuery("a.link").click(function() {
var id = jQuery(this).parents(".container").children("input.id").val();
alert(id);
});
甚至不确定这是否是选择我想要的最佳方式......一些指导将不胜感激。
答案 0 :(得分:1)
隐藏的输入标记是否有效,或者当有人点击您的链接时,是否仅用于检查?另一种方法是使用rel
属性将所需的值输出到锚标记本身,并消除隐藏的输入。
将您的HTML输出:
<div class="container">
<div class="inner">
<a href="#" class="link" rel="123">link</a>
</div>
</div>
然后你的jQuery是这样的:
jQuery("a.link").click(function() {
var id = jQuery(this).attr('rel');
alert(id);
});
如果<input>
标记不起作用,这将简化您的HTML和jQuery。
答案 1 :(得分:0)
尝试
jQuery(".link").live('click',function() {
var id = jQuery(this).parents(".container").find(".id").val();
alert(id);
});
答案 2 :(得分:0)
试试这个:
$("a.link").click(function(){
var value = $(this).parent().siblings(".id").val();
});
如果您想通过输入类型找到它,您可以这样做:
$("a.link").click(function() {
alert($(this).parent().siblings("input[type='hidden']").val());
});