如何获取数组文本框中文本框的键(索引)值

时间:2015-05-27 16:00:43

标签: javascript jquery html web

我想要一个jQuery函数或javascript来警告索引和数组文本框的值:例如

<input type="text" name="textbox[]" value="1" onblur="javascriptfunction(this.value,this.index)" />
<input type="text" name="textbox[]" value="foo" onblur="javascriptfunction(this.value,this.index)" />

<input type="text" name="textbox[]" value="banana" onblur="javascriptfunction(this.value,this.index)" />

每当鼠标从第一个输入移动时,我就会发出警告(1,0),第二个是(foo,1),依此类推。我找不到那样做的功能。请帮忙。

3 个答案:

答案 0 :(得分:1)

您可以使用jQuery index()val()之类的

&#13;
&#13;
$('input').blur(function(){
  alert($(this).val() + ',' + ($(this).index()-1));
  });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<input type="text" name="textbox[]" value="1" />
<input type="text" name="textbox[]" value="foo" />

<input type="text" name="textbox[]" value="banana" />
&#13;
&#13;
&#13;

<强>更新

要定位某些元素或在命名函数中使用此元素,首先,将标识符放在元素上,例如类my-class。然后,创建一个命名函数并将其传递给jQuery模糊函数

&#13;
&#13;
$('.my-class').blur( alertIndexAndVal );

function alertIndexAndVal(){
  alert($(this).val() + ',' + ($(this).index()-1));
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<input class="my-class" type="text" name="textbox[]" value="1" />
<input class="my-class" type="text" name="textbox[]" value="foo" />

<input class="my-class" type="text" name="textbox[]" value="banana" />
&#13;
&#13;
&#13;

答案 1 :(得分:0)

&#13;
&#13;
var textboxes = $('input[name="textbox[]"]');

textboxes.on('blur', function() {
    var index = textboxes.index( this );
    alert( this.value + ', ' + index );
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" name="textbox[]" value="1"  />
<input type="text" name="textbox[]" value="foo"  />
<input type="text" name="textbox[]" value="banana"  />
&#13;
&#13;
&#13;

答案 2 :(得分:0)

我认为我发布了一个javascript解决方案,老实说尝试做类似jquery的索引函数,尽管我觉得jquery函数可能更好。

&#13;
&#13;
var getIndexValue = function (e) {
    var children = e.parentElement.children;
    for (var i = 0; i < children.length; i++) {
        if (children[i] == e) {
            alert("Index: " + (i+1) + ", Value: " + e.value);
        }
    }
}
&#13;
<div>
    <input type="text" name="textbox[]" value="one" onblur="getIndexValue(this)">
    <input type="text" name="textbox[]" value="two" onblur="getIndexValue(this)">
    <input type="text" name="textbox[]" value="three" onblur="getIndexValue(this)">
</div>
&#13;
&#13;
&#13;

索引:(i + 1)

价值:( e.value);