tho*_*hom 59 javascript jquery events jquery-selectors
如何获取下面代码中单击项的索引?
$('selector').click(function (event) {
// get index in collection of the clicked item ...
});
Run Code Online (Sandbox Code Playgroud)
使用Firebug我看到了这个:( jQuery151017197709735298827: 2我点击了第二个元素).
Ant*_*Ant 100
这将提示被点击的选择器的索引(从第一个开始为0):
$('selector').click(function(){
alert( $('selector').index(this) );
});
Run Code Online (Sandbox Code Playgroud)
rsp*_*lak 60
$('selector').click(function (event) {
alert($(this).index());
});
Run Code Online (Sandbox Code Playgroud)
Tus*_*har 26
$(this).index() 如果元素是兄弟元素,则可用于获取被点击元素的索引.
<div id="container">
<a href="#" class="link">1</a>
<a href="#" class="link">2</a>
<a href="#" class="link">3</a>
<a href="#" class="link">4</a>
</div>
Run Code Online (Sandbox Code Playgroud)
$('#container').on('click', 'a', function() {
console.log($(this).index());
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div id="container">
<a href="#" class="link">1</a>
<a href="#" class="link">2</a>
<a href="#" class="link">3</a>
<a href="#" class="link">4</a>
</div>Run Code Online (Sandbox Code Playgroud)
如果没有向该
.index()方法传递参数,则返回值是一个整数,指示jQuery对象中第一个元素相对于其兄弟元素的位置.
将选择器传递给index(selector).
$(this).index(selector);
Run Code Online (Sandbox Code Playgroud)
例:
查找<a>单击的元素的索引.
<tr>
<td><a href="#" class="adwa">0001</a></td>
</tr>
<tr>
<td><a href="#" class="adwa">0002</a></td>
</tr>
<tr>
<td><a href="#" class="adwa">0003</a></td>
</tr>
<tr>
<td><a href="#" class="adwa">0004</a></td>
</tr>
Run Code Online (Sandbox Code Playgroud)
$('#table').on('click', '.adwa', function() {
console.log($(this).index(".adwa"));
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<table id="table">
<thead>
<tr>
<th>vendor id</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#" class="adwa">0001</a></td>
</tr>
<tr>
<td><a href="#" class="adwa">0002</a></td>
</tr>
<tr>
<td><a href="#" class="adwa">0003</a></td>
</tr>
<tr>
<td><a href="#" class="adwa">0004</a></td>
</tr>
</tbody>
</table>Run Code Online (Sandbox Code Playgroud)
Siv*_*ran 10
就这样做: -
$('ul li').on('click', function(e) {
alert($(this).index());
});
Run Code Online (Sandbox Code Playgroud)
要么
$('ul li').click(function() {
alert($(this).index());
});
Run Code Online (Sandbox Code Playgroud)