如果我有以下代码
$('.ale').click(function(){
var val = $('.val').val();
alert(val);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class='ale' for='hello'>
<input class='val' type='text' id='hello' value='Hello'>
<label class='ale' for='world'>
<input class='val' type='text' id='world' value='World'>
value
来提醒
input
label
但这不起作用,因为它总是得到第一个value = 'Hello'
如何定义onclick以获取其id attr = for attr
的输入值?
答案 0 :(得分:1)
只需获取标签for
属性的值,然后使用它查找具有相同id
值的输入。
$('.ale').click(function(){
var val = $(this).attr('for');
alert($('#'+val).val());
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class='ale' for='hello'>Label 1</label>
<input class='val' type='text' id='hello' value='Hello'>
<label class='ale' for='world'>Label 2</label>
<input class='val' type='text' id='world' value='World'>
&#13;
答案 1 :(得分:1)
试试这个:
$('.ale').click(function () {
var val = $(this).next('.val').val()
alert(val)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class='ale' for='hello'>Label 1</label>
<input class='val' type='text' id='hello' value='Hello'>
<label class='ale' for='world'>Label 2</label>
<input class='val' type='text' id='world' value='World'>
答案 2 :(得分:0)
使用$('.val')
时,您将获得代码的类val的所有实例。
使用$(this).next('input').val();