获取javascript中输入元素的索引
get index of input element in javascript
如果我在一个网页上有3个输入框,用户点击了第二个输入,我需要得到输入索引,即输入在页面上的位置。我需要纯javascript。这就是我目前所拥有的,但它不起作用。。。
document.querySelector('html').onclick = function (e) {
log(e);
}
function log(obj) {
var nodeName = obj.target.nodeName
var idx = nodeName.length
console.log(nodeName, idx);
}
任何帮助都将不胜感激!
纯javascript:
function getIndexFromSet(set, elm){
var setArr = [].slice.call(set);
for( var i in setArr )
if( setArr[i] == elm )
return i;
}
以上功能可以这样使用:
function checkInputFocus(e){
if(e.target && e.target.nodeName == 'input' )
index = getIndexFromSet(inputs, e.target);
}
var inputs = document.querySelectorAll('input');
document.addEventListener("click", checkInputFocus);
使用jQuery,如果您在这个页面上(在控制台中)运行它
var inputs = $('input'); // get all input elements on the page
inputs.index( $('#save-pinned-sites-btn') ); // find the index of spesific one
您将得到一个表示$('#save-pinned-sites-btn')
元素的索引的数字
内联:
<input onclick="for(i=0;i<this.parentNode.getElementsByTagName('input').length;i++){if(this==this.parentNode.getElementsByTagName('input')[i]){alert(i);}}">
或者将其更改为
onclick="show_index(this)"
并添加:
function show_index(which) {
for(i=0;i<which.parentNode.getElementsByTagName('input').length;i++){
if(which==which.parentNode.getElementsByTagName('input')[i]){
alert(i);
}}
相关文章:
- 如何索引jquery中的每个元素
- 如何在z索引为auto的元素下堆叠
- 将一个元素放在具有相同z索引的其他元素前面
- 获取javascript中输入元素的索引
- 如何设置元素的z索引?JQuery、Javascript、CSS、HTML
- 已筛选jQuery集中元素的索引
- JavaScript-在不影响索引的情况下将元素插入数组
- 正在获取单击的元素相对于整个文档的索引
- 触发具有较低Z索引值的DOM元素的事件
- 获取页面上每个元素的Z索引
- 获取不同元素的索引
- 获取当前元素的索引并更改他的样式
- JQUERY 按钮返回到索引元素
- 获取在列表视图中具有特定首字母的索引元素
- 如何更改test.html中的索引元素
- 使用索引元素id时出现意外错误
- 删除数组中不存在的索引元素上的运算符行为
- 如何获取索引元素
- $index的元素变化,而使用过滤器如何获得正确的索引元素angularjs
- Javascript - 如何从 2D 数组中获取索引 [1] 元素的总和