使用 java 脚本验证 html 中的文本区域
Validate textarea in html with java script
我试图阻止用户在文本区域中输入和提交单引号 (')。以下是我拥有的,但它不起作用。
<script>
function valtxtarea() {
var val = document.getElementById('textarea').value;
if ('\''.test(val)) {
alert('do not add single qoutes to your inputs!');
}
}
</script>
<form>
enter text below
<textarea>input contents here</textarea>
<input type="button" onclick="valtxtarea();" value="send">
</form>
var val = document.getElementById('textarea').value;
没有 ID 为 textarea
的 HTML 元素。
做这样的事情:
<textarea id="textarea">input contents here</textarea>
如果出现验证错误,您可能还想阻止表单提交,所以将 return false;
放在 valtxtarea()
的 if
中,并将 return valtxtarea()
放在 onclick 中.
您错过了 id
属性以及正则表达式无效
function valtxtarea() {
var val = document.getElementById('textarea').value;
if (/\'/.test(val)) {
alert('do not add single qoutes to your inputs!');
}
}
<form>
enter text below
<textarea id="textarea"></textarea>
<input type="button" onclick="valtxtarea();" value="send">
</form>
更好的是,为什么不阻止他们输入呢?
<form>
enter text below
<textarea id='inputText' oninput="valtxtarea();"></textarea>
<input type="button" value="send">
</form>
<script>
var oldValue = "input contents here";
document.getElementById('inputText').value = oldValue;
function valtxtarea() {
var textArea = document.getElementById('inputText');
if (textArea.value.match(/.*\'.*/g)) {
textArea.value = oldValue;
} else {
oldValue = textArea.value;
}
}
</script>
有了这个,每次他们输入一个字符时,它都会被检查,如果它包含一个 ',那么它就会将它设置回旧值。您可以轻松地扩展它以包含您不想允许的其他字符。
我试图阻止用户在文本区域中输入和提交单引号 (')。以下是我拥有的,但它不起作用。
<script>
function valtxtarea() {
var val = document.getElementById('textarea').value;
if ('\''.test(val)) {
alert('do not add single qoutes to your inputs!');
}
}
</script>
<form>
enter text below
<textarea>input contents here</textarea>
<input type="button" onclick="valtxtarea();" value="send">
</form>
var val = document.getElementById('textarea').value;
没有 ID 为 textarea
的 HTML 元素。
做这样的事情:
<textarea id="textarea">input contents here</textarea>
如果出现验证错误,您可能还想阻止表单提交,所以将 return false;
放在 valtxtarea()
的 if
中,并将 return valtxtarea()
放在 onclick 中.
您错过了 id
属性以及正则表达式无效
function valtxtarea() {
var val = document.getElementById('textarea').value;
if (/\'/.test(val)) {
alert('do not add single qoutes to your inputs!');
}
}
<form>
enter text below
<textarea id="textarea"></textarea>
<input type="button" onclick="valtxtarea();" value="send">
</form>
更好的是,为什么不阻止他们输入呢?
<form>
enter text below
<textarea id='inputText' oninput="valtxtarea();"></textarea>
<input type="button" value="send">
</form>
<script>
var oldValue = "input contents here";
document.getElementById('inputText').value = oldValue;
function valtxtarea() {
var textArea = document.getElementById('inputText');
if (textArea.value.match(/.*\'.*/g)) {
textArea.value = oldValue;
} else {
oldValue = textArea.value;
}
}
</script>
有了这个,每次他们输入一个字符时,它都会被检查,如果它包含一个 ',那么它就会将它设置回旧值。您可以轻松地扩展它以包含您不想允许的其他字符。