[英]jQuery - Selecting a text box before a span tag with certain CSS class
我是jQuery的初學者。 如果有人可以幫助我,那就太好了。 我不確定這里出了什么問題。
這就是我想要的。 我有一個類為“ spanClass1”的元素。 在此元素之前,還有另一個元素和一個文本框元素。 我的要求是滾動到該文本框元素並獲得對該元素的關注。 而且我還添加了一些CSS以查看更改的發生。 但是問題是上面的代碼似乎不起作用。 如果我將.prev(..)中的選擇器替換為“ span”,則它可以工作。 我想念什么嗎? 如果有人可以幫助我,那將真的很有幫助。
<html><br />
<head><br />
<title><br />jQuery</title><br />
<script type="text/javascript" language="javascript" src="jquery.js"><br /></script><br />
<script type="text/javascript" language="javascript"><br />
$(document).ready(function() {<br />
var elem = $('.spanClass1').get();<br />
alert(elem.length);<br />
alert("Text box elements " + $('input[type=text]').get().length);<br />
if (elem.length > 0)<br />
{<br />
var elem1 = $(elem[0]).prev('input[type=text]');<br />
$(this).scrollTop($(elem1).position().top);<br />
$(elem1).css('background-color','red');<br />
$(elem1).focus();<br />
}<br />
});<br />
</script><br />
</head><br />
<body><br />
<br /><br />
<div><br />
<input type="text" id="text1" value="test" class="selected"><br /><span id="elem4" class="sClass1"><br /> </span><br /><span id="elem5" class="spanClass1"><br />This is a test</span><br /><br /><br />
</div><br />
</body><br />
</html>
提前致謝。
此致Karthik
調用.prev()
僅返回前一個元素,而不返回之前的其他元素。
您需要.prevAll()
調用:
var elem1 = $(elem[0]).prevAll('input[type=text]');
您需要使用。 prevAll()
而不是.prev()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.