我只需要允许用户在textinput中输入以下字符:
A-ZA-Z0-9 @#$%^*_!|
<form action="http://www.cknuckles.com/cgi/echo.cgi" method="get" name="logOn">
User Name:<br />
<input type="text" name="userName" size="25" /><br />
Password:<br />
<input type="password" name="pw" size="25" /><br />
<input type="submit" value="Log In" onClick="validate()"/>
</form>
Run Code Online (Sandbox Code Playgroud)
上面是我的HTML,下面是我试图用来验证它的JavaScript - 但它不起作用 - 任何线索.
<script language="javascript">
document.logOn.onsubmit=validate;
function validate(){
var name=document.logOn.pw.value;
if(!name = "[a-zA-Z0-9!@#$%^*_|]"){
alert("Your Password Cant Have any thing other than a-zA-Z0-9!@#$%^*_| - Play It Straight!");
return false;
}
return true;
}
</script>
Run Code Online (Sandbox Code Playgroud)
但这不起作用.我仍然可以把字符放在">","<"和"{"等中.
有什么想法吗?
当用户在输入字段中输入时,是否有任何选项可以使用此代码而不显示字母或字符?这是我已经尝试过的代码,我想保留它,但是现在当我在输入中编写受限制的字符时,它会显示它们.我需要将输入留空
编辑:我不想更改代码,因为这在平板电脑上很有用(其他限制字符函数不会).唯一的问题是你按下受限制的字符会延迟
码:
function checkInput(ob){
var invalidChars = /[^0-9]/gi
if(invalidChars.test(ob.value)) {
ob.value = ob.value.replace(invalidChars,"");
}
};
Run Code Online (Sandbox Code Playgroud)
HTML:
<input class="input" maxlength="1" onChange="checkInput(this)" onKeyup="checkInput(this)" type="text" autocomplete="off"/>
Run Code Online (Sandbox Code Playgroud) 我一直在努力是一个文本input变窄下来<option>在<select>按照用户类型.它正在运行,但我现在关心的是安全性,用户传入的内容input以及潜在的恶意条目.
我想我可以做类似的事情,<input placeholder='[a-zA-Z]' />但它仍然允许在文本框中输入其他字符.
我在这里做错了什么,以及只允许输入字母数字的替代方案是什么?
onInputChange(term) {
this.setState({ term });
}
renderOptionsSelect(term) {
return _.map(this.props.pos_list, p => {
var searchTerm = this.state.term.toLowerCase();
if (p.pos_code.toLowerCase().match(searchTerm)) {
return (
<option key={p.pos_code} value={p.pos_code}>{p.pos_code}</option>
);
}
});
}
// render the main element of the container
render() {
return (
<div className='panel panel-default'>
<div className='panel-heading'>
<h4><strong>Basic Query</strong></h4>
</div>
<div className='panel-body'>
<input
pattern='[a-zA-Z]'
className='form-control'
placeholder='Enter Keyword or Position Code'
value={this.state.term}
onChange={event => this.onInputChange(event.target.value)}
/>
<hr …Run Code Online (Sandbox Code Playgroud) javascript ×3
character ×1
html5 ×1
jquery ×1
limit ×1
react-redux ×1
reactjs ×1
regex ×1
textfield ×1