首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js 数组中剔除一个元素

2012-10-16 
js 数组中删除一个元素var elementArr document.getElementsByTagName(input)for (var i0ielement

js 数组中删除一个元素
var elementArr = document.getElementsByTagName("input");
for (var i=0;i<elementArr.length; i++) {
if(true){
elementArr.remove(i)
}
}
我想删除elementArr中的i元素,请问该怎么删除

[解决办法]
elementArr.splice(i,1);
[解决办法]
var elementArr = document.getElementsByTagName("input"); 
for (var i=0;i <elementArr.length; i++) { 
if(true){ 
elementArr[i].outHTML = "" 



[解决办法]
elementArr[i].parentNode.removeChild(elementArr[i]);
[解决办法]
3楼正解
[解决办法]
LZ这样删除会出错
因为数组内容和下标随着删除会有变化.

删除数组指定的下标:

HTML code
<script>var arr = ['a','b','c','d','e'];function arr_del(d){    return arr.slice(0,d-1).concat(arr.slice(d));}alert(arr_del(3)); // a,b,d,e</script>
[解决办法]
探讨
LZ这样删除会出错
因为数组内容和下标随着删除会有变化.

删除数组指定的下标:
HTML code<script>vararr=['a','b','c','d','e'];functionarr_del(d){returnarr.slice(0,d-1).concat(arr.slice(d));
}

alert(arr_del(3));//a,b,d,e</script>

[解决办法]
楼主 你详细的描述下你的需求 你说你想实现什么就可以了
[解决办法]
探讨
LZ这样删除会出错
因为数组内容和下标随着删除会有变化.

删除数组指定的下标:

HTML code<script>
var arr = ['a','b','c','d','e'];
function arr_del(d){
return arr.slice(0,d-1).concat(arr.slice(d));
}

alert(arr_del(3)); // a,b,d,e
</script>

[解决办法]
var arr_= document.getElementsByTagName("input"),elementArr=[]; 
for(var i=0;l=arr_.length;i<l;i++)elementArr[i]=arr_[i];

//原来代码
for (var i=0;i <elementArr.length; i++) { 
if(true){ 
// elementArr.remove(i) 
elementArr.splice(i,1)




[解决办法]
探讨
elementArr.splice(i,1);

[解决办法]
这样?
HTML code
<input type="text" value="a" /><input type="text" value="b" /><input type="text" value="c" /><script>var elementArr = document.getElementsByTagName("input");// 比如删除 input.value 特定值的,可以这样function fun(){    if(arguments.length == 0) return;    var ars = [];    for(var i=0; i<arguments.length; i++) ars.push(arguments[i].replace(/\|/g,'\\|'));    ars = new RegExp(ars.join('|'),'i');    var arr = [];    for (var i=0; i<elementArr.length; i++) if (!ars.test(elementArr[i].value)) arr.push(elementArr[i]);    return arr;}elementArr = fun('a', 'b');alert(elementArr);</script>
[解决办法]
看到最后才算看明白你要的效果
你是想删除通过var elementArr = document.getElementsByTagName("input"); 这个得到的值的其中的一个值
对吧?
------解决方案--------------------


.........
[解决办法]
a数组9个元素
想删除第一个
声明一个b数组8个元素
循环将a数组中需要的元素加入b数组..
重新定义a数组等于b数组
搞定
[解决办法]

探讨
var elementArr = document.getElementsByTagName("input");
for (var i=0;i <elementArr.length; i++) {
if(true){
elementArr[i].outHTML = ""
}
}

热点排行