当输入字段的正则表达式匹配时,突出显示提交按钮

时间:2017-07-18 23:20:17

标签: javascript regex button match highlight

因为这是我在StackOverflow上的第一个问题,我希望我能正确地做到这一点。 对于JS来说,我是个新手,这就是我现在问社区的原因。

我正在一个小型网站上工作,您可以在其中添加URL或IP以显示服务器状态。正则表达式正在运行,但我不想在html的源代码中添加它,以防止黑客只能删除" required pattern ="然后添加任何东西。这就是我尝试在JS中构建脚本的原因。如果有比JS更好的选择,我会使用它。

目前只有在您输入内容时才会突出显示该按钮,如果输入与我的正则表达式匹配,我希望突出显示该按钮,如果它是URL或IP。

我当前的脚本如下所示:

window.onload = function(){

    document.getElementById("add-button").disabled = true;
}

function checkForm(elem) {
    var button = document.getElementById("add-button");
    if(elem.value == "" || elem.value.length == 0) {
        button.disabled = true;
    }
    else {
        button.disabled = false;
    }
}

我在哪里为正则表达式添加变量或其他内容?

提前感谢所有试图帮助我的人!

1 个答案:

答案 0 :(得分:0)

使用此:

function checkForm(elem) {
    var ptn = /^((https?|ftp)(:\/\/))(www\.)?[a-zA-Z0-9]+\.[\w+.-]/g;
    if(ptn.test(elem.value)){
        var button = document.getElementById("add-button");
        if(elem.value == "" || elem.value.length == 0) {
            button.disabled = true;
        }else {
            button.disabled = false;
        }
    }else{return false;}
}