I have the following React method which should create an input field with a maximum length:
displayInputField: function(name, placeholder, updateMethod, maxLength) {
return (
<div className="form-group form-inline">
<label>{name}</label>
<input onChange={updateMethod} type="text" className="form-control"
maxlength={maxLength} placeholder={placeholder}/>
</div>
);
},
However, the input field generated does not stop me from inputting more characters. Its source is this:
<input type="text" class="form-control" placeholder="<15 characters" data-reactid=".0.1.2.0.0.1.2.1.0.1">
Why is the maxlength attribute not respected?
Your problem here was that you had written maxlength
when in JSX it should have been maxLength
. This lower camel case approach is the same for all HTML attributes, eg cellPadding
, encType
, and so on.
Remember, your JSX ultimately is JavaScript; you should read the list of supported tags and attributes if you're not sure.
这对我有用:
<input className="form-control" maxLength={30} size={30} name="subject" />
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.