To buduje dane wejściowe w pliku jQuery:
_buildScoreField: function() {
return $("<input />" , {
name: this.opt.scoreName,
type: "hidden"
}).appendTo(this);
},
Próbuję dodać required
atrybut do tego input
element, ale nigdy nie widziałem go sformatowanego w ten sposób, więc nie jestem pewien, jak to zrobić.
Odpowiedzi:
0 dla odpowiedzi № 1Używa ten wariant $()
, który pozwala podać atrybuty, właściwości, a nawet niektóre metody w obiekcie jako drugi argument. Dodaj required: true
do tego obiektu (required: "required"
działałoby również, ale jQuery to rozumie required
jest logiczną właściwością odzwierciedloną, a także atrybutem i uchwytami, które poprawnie dla Ciebie):
_buildScoreField: function() {
return $("<input />" , {
name: this.opt.scoreName,
type: "hidden",
required: true // <====
}).appendTo(this);
}
To powiedziawszy, czyniąc ukryty wkład required
wydaje się .... dziwne. :-)
0 dla odpowiedzi nr 2
{ name: this.opt.scoreName , type: "hidden" }
to atrybuty tworzonego elementu. Przekaż parę klucz-wartość jako dodatkową opcję.
{ name: this.opt.scoreName , type: "hidden", required: true }
Więcej dokumentacji znajduje się tutaj ..
http://api.jquery.com/jQuery/#jQuery-html-attributes
0 dla odpowiedzi № 3
Nie możesz zrobić input
wymagany element typu „ukryty”. Od MDN <input>
spec:
wymagany
Ten atrybut określa, że użytkownik musi podać wartość przed przesłaniem formularza. Nie można go użyć, gdy atrybut typu jest ukryty, obraz lub typ przycisku (prześlij, zresetuj lub przycisk).
Zastanów się, jaki przypadek użycia próbujesz rozwiązać, i użyj odpowiedniego input
typy i atrybuty.
0 dla odpowiedzi nr 4
Ponieważ chcesz dodać atrybut required="required"
, użyj następującej pary atrybut / wartość w konstruktorze:
required: "required"
Prawidłowe jest także dodanie atrybutu o wartości zerowej: required: ""
$("<input />" , {
name: this.opt.scoreName,
type: "hidden",
required: "required"
})