2010-11-07 23 views
5

Me gustaría incluir solo ciertos campos de formulario al enviar un formulario con jQuery. Por ejemplo, me gustaría hacer caso omiso de todos los campos que tienen el atributo disabled ... tal vez algo como esto:Ignorar campos de entrada en el formulario enviar con jQuery

$('#my_button').click(function() { 
    if($('input').hasAttr('disabled') { 
     //ignore this form field when submitting 
    } 
    $('form').submit(); 
}); 

¿Alguna idea?

Respuesta

14

Eso no es necesario, las entradas disabled están excluidas ya. Los diversos métodos de jQuery, incluyendo someten() y serialize() cumplir la especificación HTML 4 para los controles con discapacidad en los formularios web, que va de la siguiente manera:

Un control exitoso es "válido" para su presentación. Cada control exitoso tiene su nombre de control emparejado con su valor actual como parte del conjunto de datos del formulario enviado. Un control exitoso debe definirse dentro de un elemento FORM y debe tener un nombre de control.

Sin embargo:

  • controles que se disabled no puede tener éxito.

http://www.w3.org/TR/html401/interact/forms.html#successful-controls

+1

+1 - Para los curiosos, jQuery [realiza el mismo filtro cuando se serializa] (https://github.com/jquery/jquery/blob/master/src/ajax. js # L97). –

+0

Estaba a punto de publicar que, de todos modos, creo que lo ignorará por defecto. – Matt

+0

Pero un atributo deshabilitado se puede establecer en falso con javascript. En este caso, se enviarán también, tal vez ese es el comportamiento que ThePixelProdigy quiere cambiar. –

Cuestiones relacionadas