我已经在javascript中创建了一个代码,如果选择了下拉选项,则会禁用表单上的提交按钮,但如果键入字符串(http),(https)或(www),我还要关闭提交按钮进入表格的文本区域。任何正确方向的帮助都会很棒。
试试这个
<textarea id="my-textarea"></textarea>
document.querySelector('#my-textarea').addEventListener('input', (event) => {
if (event.target.value.includes('http') || event.target.value.includes('https') || event.target.value.includes('www')) {
console.log('invalid');
} else {
console.log('valid');
}
});
这是小提琴的样本:https://jsfiddle.net/2qorhekd
您可以收听keyup
事件并在事件触发时检查输入。
就像是:
let illegalWords = ["http", "https", "www"];
function checkText(text) {
if (text.length >= 1) {
for (let word of illegalWords) {
if (text == word) {
// word found, remove submit button
console.log("found");
document.getElementById("submit").style.display = "none";
}
}
}
}
<textarea onkeyup='checkText(this.value);'></textarea>
<button type="submit" id="submit">Submit</button>
您可以在此代码中添加else
块,以便在删除非法单词时显示提交按钮(如果当前不可见)。
用于测试字符串是否包含http,https或www的函数
var valid = function(text){
var regex = /(https?|www)/;
return !regex.test(text);
}