2014-11-14 23 views
5

Ho un modulo in cui determinati input hanno attributo "richiesto". Ho anche un pulsante che aggiunge campi modulo quando si fa clic, ma attiva sempre il messaggio di convalida del modulo quando i campi richiesti non vengono compilati. Voglio solo abilitare la convalida del modulo per ng-submit e non ng-click. È possibile?Come disabilitare la convalida del modulo per ng-clic?

+1

usa 'type =" button "' di button ...! – Jai

risposta

17

Se si osserva la specifica del W3C, sembrerebbe che la cosa ovvia da provare sia contrassegnare gli elementi del pulsante con type = 'button' quando non si desidera che vengano inviati.

La cosa da notare, in particolare, è dove si dice

Un elemento pulsante con alcun attributo tipo specificato rappresenta la stessa cosa di un elemento pulsante con l'attributo type impostato su "submit"

+0

Ah, il problema era che non ho specificato un tipo = "" per il mio pulsante e per default è stato inviato. – harveyxia

0

Usa novalidate per il modulo:

<form name="aForm" novalidate> 

o l'uso ng-forma, invece:

<div ng-form name="aForm"> 

Controllare this link per ulteriori informazioni sulla convalida del modulo in AngularJS.

0

quando non si desidera l'invio su un pulsante specifico, quindi definire type = "button". funzionerà al 100%

+0

Ciao jitendra: questa è la stessa soluzione già suggerita da Amit Sharma. Hai qualche consiglio diverso? –