У меня есть этот код:
$("td").on("click", function(){
var result = $(this).closest('table').siblings('form').find('input[name="inputname"]').attr('value');
alert(result);
});
td {
cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tbody>
<tr>
<td>click</td>
<tr>
</tbody>
</table>
<form>
<input name = 'inputname' value = "10">
</form>
<form>
<input name = 'inputname' value = "12">
</form>
При нажатии на click
, он предупреждает 10
. Все отлично, 10
- это именно то, что мне нужно. Но я не знаю, почему у меня плохое чувство о .siblings('form')
, потому что второй form
также находится в области братьев и сестер, что table
. Хотя мне просто нужно выбрать form
, который находится под table
, только один (не второй form
).
Опять же, выход правильный, и все, что я хочу, является альтернативой для .siblings(form)
в этом случае, есть ли?
Иными словами, как я могу определить это в jQuery?
$(this).closest('table')./* next form */.find('input[name="inputname"]').attr('value');
NextSibling? http://www.w3schools.com/jsref/prop_node_nextsibling.asp Извините за ссылку w3schools. Я слышал, что он нахмурился вокруг. – Observer
вы можете использовать '.siblings ('form: first')' –
или '.siblings ('form'). First()' –