2011-06-04 14 views
9

Esto debe ser divertido para resolver :)Jquery quitar el elemento de la matriz

En un campo de texto que tengo el valor Apple,Peach,Banana.

Utilizando Jquery, creé una matriz a partir de ese CSV.

En HTML tengo una lista de las frutas con una opción "eliminar" al lado de cada una. Cuando hago clic en "eliminar", quiero eliminar la fruta correspondiente de la lista y el campo de texto.

Me falta una función que eliminará las frutas de la matriz. ¿Qué función debo usar?

http://jsfiddle.net/BXWqK/19/

Respuesta

25

Debe utilizar JavaScript Splice

fruits_array.splice(fruit_index,1); 

También es necesario cambiar:

$('#fruits').val(skills_array.join(',')); a $('#fruits').val(fruits_array.join(','));

+0

Gran !! ¡Gracias por la solución y el enlace! :) – CyberJunkie

+1

[Aquí están los documentos de MDN para 'Array # splice'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/splice) – captainpete

6
var A=['Apple','Peach','Banana']; 

    A.splice(1,1) 

// removes 1 item starting at index[1] 
// returns ['Peach']; 
1

La solución aceptada es correcta, pero doesn' t mí nci ó n que no se debe usar indexOf para obtener el fruit_index a eliminar, porque IndexOf not Supported in IE8 Browser

Debe utilizar:

fruits_array.splice($.inArray('Peach', fruits_array), 1); 
Cuestiones relacionadas