如何只允许在此文本框中写入数字?
<input type="text" class="textfield" value="" id="extra7" name="extra7">
With HTML5 you can do
<input type="number">
You can also use a regex pattern to limit the input text.
<input type="text" pattern="^[0-9]*$" />
You could subscribe for the onkeypress event:
<input type="text" class="textfield" value="" id="extra7" name="extra7" onkeypress="return isNumber(event)" />
and then define the isNumber function:
isNumber
function isNumber(evt) { evt = (evt) ? evt : window.event; var charCode = (evt.which) ? evt.which : evt.keyCode; if (charCode > 31 && (charCode < 48 || charCode > 57)) { return false; } return true; }
You can see it in action here.
You also can use some HTML5 attributes, some browsers might already take advantage of them (type="number" min="0").
type="number" min="0"
Whatever you do, remember to re-check your inputs on the server side: you can never assume the client-side validation has been performed.