2012-02-15 24 views
8

Tengo el siguiente código:¿Cómo puedo excluir una clase de mi selector jQuery?

$(":input[type='text']").wijtextbox(); 

Lo que me gustaría es que el wijtextbox() no se aplica si la clase de mi cuadro de texto es nativa. ¿Hay alguna forma en que de alguna manera pueda excluir esto al agregar al selector anterior?

hacer de esto una wijtextbox:

<textarea class="wijmo-wijtextbox ui-widget ui-state-default ui-corner-all valid" >xx</textarea> 

No hacer de esto una wijtextbox:

<textarea class="native wijmo-wijtextbox ui-widget ui-state-default ui-corner-all valid" >xx</textarea> 
+0

Si la clase es el texto "nativo?" – Purag

Respuesta

14

Este:

$("input[type='text']").not(".native").wijtextbox(); 

o esto:

$("input[type='text']:not('.native')").wijtextbox(); 

debería hacer el truco. También hay un acceso directo para seleccionar una entrada cuyo tipo es text:

$("input:text").not(".native").wijtextbox(); 

Más sobre not()here.

EDIT: Dado que parece que necesita para seleccionar un área de texto, pruebe lo siguiente:

$("textarea").not(".native").wijtextbox(); 
+0

'input: text' no seleccionará un' textarea' que es lo que OP tiene en cuestión. – ShankarSangoli

+0

Ninguno 'input [type = 'text']' tiene ... editó su pregunta. : P – Purag

+0

Sí, no funcionará, ya que es uno y lo mismo. – ShankarSangoli

3

Prueba esto.

$(":input:not(.native)").wijtextbox(); 

Ya que la selección de textarea incluso se puede utilizar este

$("textarea:not(.native)").wijtextbox(); 

:not(selector) - Selecciona todos los elementos que no coinciden con el selector dado.

+0

@Jessica - Pruebe esto. – ShankarSangoli

2

Puede utilizar el selector de jQuery .not(), tal como se documenta aquí: http://api.jquery.com/not/

como se puede utilizar lo que realmente depende de lo que específicamente se está tratando de encontrar, aunque.