gpt4 book ai didi

javascript - 如何获得 prev() 而不仅仅是 sibling

转载 作者:行者123 更新时间:2023-11-28 16:55:44 24 4
gpt4 key购买 nike

我有 5 个按钮,其中只有 4 个按钮彼此相邻。有一个按钮位于它自己的 div 中。如何使用 prev() 之类的方法访问它?

这是一个示例代码:

<div>
<div>
<input type="button" class="test" value="Test1">
</div>

<input type="button" class="test" value="Test 2">
<input type="button" class="test" value="Test 3">
<input type="button" class="test" value="Test 4">
<input type="button" class="test" value="Test 5">
</div>

<script>
$(".test").click(function() {
var value = $(this).prev().val();
alert(value);
});
</script>

链接: https://jsfiddle.net/fzwqmyb4/3/

当我按下“测试 4”时,它显示“测试 3”,这很好。但是当我按下“测试 2”按钮时,它应该显示“测试 1”,但它没有。原因是因为 prev() 只对 sibling 有效。

但是我怎样才能制作一个动态代码来检测某个东西的前一个,即使它在另一个 div 中?

最佳答案

您可以检查前一个元素是否是输入,如果不是,则找到 child 。检查这些代码:

$(".test").click(function(){
var prevElement = $(this).prev().get(0);
if(prevElement && prevElement.nodeName !== 'INPUT')
{
prevElement = $(prevElement).find('input').get(0);
}

var value = prevElement ? prevElement.value : '';
alert(value);
});

关于javascript - 如何获得 prev() 而不仅仅是 sibling ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56998881/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com