/ / Incluso l'attributo 'richiesto' in questo jQuery - jquery, obbligatorio

Compreso l'attributo 'richiesto' in questo jQuery - jquery, richiesto

Questo sta costruendo un input in un file jQuery:

_buildScoreField: function() {
return $("<input />" , {
name: this.opt.scoreName,
type: "hidden"
}).appendTo(this);
},

Sto provando ad aggiungere il required attribuire a questo input elemento, ma non l'ho mai visto formattato in questo modo, quindi non sono sicuro di come farlo.

risposte:

0 per risposta № 1

Sta usando questa variante di $(), che consente di fornire attributi, proprietà e persino alcuni metodi in un oggetto come secondo argomento. Inserisci required: true a quell'oggetto (required: "required" funzionerebbe anche, ma jQuery lo capisce required è una proprietà riflessa booleana, nonché un attributo e lo gestisce correttamente per te):

_buildScoreField: function() {
return $("<input />" , {
name: this.opt.scoreName,
type: "hidden",
required: true // <====
}).appendTo(this);
}

Detto questo, facendo un input nascosto required sembra .... strano. :-)


0 per risposta № 2

{ name: this.opt.scoreName , type: "hidden" } è gli attributi per l'elemento che si sta creando. Passa una coppia valore-chiave come opzione aggiuntiva.

{ name: this.opt.scoreName  , type: "hidden", required: true }

Più documentazione è disponibile qui ..

http://api.jquery.com/jQuery/#jQuery-html-attributes

0 per risposta № 3

Non puoi fare un input elemento di tipo "nascosto" richiesto. Dal MDN <input> spec:

necessario
Questo attributo specifica che l'utente deve compilare un valore prima di inviare un modulo. Non può essere utilizzato quando l'attributo type è nascosto, immagine o un tipo di pulsante (invia, reimposta o pulsante).

Considera quale caso d'uso stai cercando di risolvere e usa l'appropriato input tipi e attributi.


0 per risposta № 4

Dal momento che stai cercando di aggiungere un attributo required="required", utilizzare la seguente coppia attributo / valore nel costruttore:

required: "required"

È valido anche l'aggiunta dell'attributo con un valore di lunghezza zero: required: ""

$("<input />" , {
name: this.opt.scoreName,
type: "hidden",
required: "required"
})