获取嵌套元素值

时间:2012-03-04 08:39:37

标签: javascript jquery

我有html:

<div>
     <label>
        <input type='radio' name='a'>
        <span></span>
        <input type='hidden' value='1'>
     </label>
     <label>...
</div>

我需要通过标签上的点击事件获取隐藏输入的值。

我有这样的javascript:

$('label').live('click', function () {

        var value = $(this).children('input:hidden').val();

    });

但这不起作用。有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

工作正常:

<div>
    <label>
        <input type='radio' name='a'>
        <span></span>
        <input type='hidden' value='1'>
    </label>
</div>
<script type="text/javascript">
    $('label').live('click', function () {  
        var value = $(this).children('input:hidden').val();
        console.log(value);   
    });
</script>

输出:1

答案 1 :(得分:1)

 <form action="form_action.asp" method="get">
 Email: <input type="text" name="email" /><br />
<input type="hidden" name="country" value="Norway" />
 <input type="submit" value="Submit" />
   </form>


$(function() {
$('label').on('click', function () {
    var value = $(this).children('input:hidden').val();

});

});

答案 2 :(得分:1)

首先,除非你绝对必须,否则你应该避免live()功能。根据jQuery版本,使用bind()click()on()

但是您的代码运行正常,请参阅this Fiddle