Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从二维数组jQuery中删除项_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 如何从二维数组jQuery中删除项

Javascript 如何从二维数组jQuery中删除项,javascript,jquery,arrays,Javascript,Jquery,Arrays,我在jquery中有一个数组,希望根据ID或值字段从中删除项 var AccountName = [ {id: 0,value: "LUCKY'S WINDSCREENS"}, {id: 1,value: "PALM MOTORS"}, {id: 2,value: "REFLEX PANELBEATERS & SPRAYPAI"}, {id: 3,value: "SADAF INVESTME

我在jquery中有一个数组,希望根据ID或值字段从中删除项

 var AccountName = [
            {id: 0,value: "LUCKY'S WINDSCREENS"},
            {id: 1,value: "PALM MOTORS"},
            {id: 2,value: "REFLEX PANELBEATERS & SPRAYPAI"},
            {id: 3,value: "SADAF INVESTMENT T/A YUSUF MOH"}
    ];
如何删除此数组中的id和值

var id = $('#txtAccountID').val();

for (var i = 0; i < AccountName.length; i++)
{
   if (AccountName[i] != "id") { 
   AccountName.splice(i, 1);
   //break;
   }
}
var id=$('#txtAccountID').val();
对于(变量i=0;i
如果对象的id或值与
$('#txtAccountID').val()的值匹配,我猜您希望从数组中删除该对象

var id=$('#txtAccountID').val();
对于(变量i=0;i
见js小提琴

如果您只想保留匹配的元素,那么

var id = 0;
var temp = null;
for (var i = 0; i < AccountName.length; i++){
   for(var key in AccountName[i]){
       if(  key ==id || AccountName[i][key] == id ){
            temp = AccountName[i];
       }
   }
}
AccountName = temp;
var id=0;
var-temp=null;
对于(变量i=0;i
查找演示

使用(旧浏览器需要Polyfill。)


底部的一个创建了一个id和值的对象,但我需要它的数组格式,就像我在问题中发布的一样,因为我使用它作为自动完成的源。有时需要返回一个以上的结果,其中格式需要看起来像[{,},{,}];
var id = 0;
var temp = null;
for (var i = 0; i < AccountName.length; i++){
   for(var key in AccountName[i]){
       if(  key ==id || AccountName[i][key] == id ){
            temp = AccountName[i];
       }
   }
}
AccountName = temp;
AccountName = AccountName.filter(function(e) {
  return e.id !== 0;
});