Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果字符串与jquery中的行匹配,则禁用按钮_Javascript_Jquery_Html_Regex - Fatal编程技术网

Javascript 如果字符串与jquery中的行匹配,则禁用按钮

Javascript 如果字符串与jquery中的行匹配,则禁用按钮,javascript,jquery,html,regex,Javascript,Jquery,Html,Regex,我正在尝试使用jquery-1.10.2构建一个网站,在这里我想阻止css相关字符串,如,等。如果这些字符串中的任何一个匹配,我想禁用提交按钮。到目前为止,我已经使用.keyup()函数成功地阻止了它们,但是如果我写的标签超过了这样的标签,那么它就不起作用了。这是我的密码 $(document).ready(function () { $('#inputdivEditor-2').keyup(function () { var input = $(this).val();

我正在尝试使用
jquery-1.10.2
构建一个网站,在这里我想阻止css相关字符串,如
等。如果这些字符串中的任何一个匹配,我想禁用提交按钮。到目前为止,我已经使用
.keyup()
函数成功地阻止了它们,但是如果我写的标签超过了
这样的标签,那么它就不起作用了。这是我的密码

$(document).ready(function () {
    $('#inputdivEditor-2').keyup(function () {
        var input = $(this).val();
        if (input == "<style>" || input == "</style>" || input == "<link>") {
            $('#deactivedivEditor-2').attr("disabled", "disabled");
        }else{
            $('#deactivedivEditor-2').removeAttr("disabled");
        }
    });
});
$(文档).ready(函数(){
$('#inputdivEditor-2').keyup(函数(){
var输入=$(this.val();
如果(输入=“”| |输入=“”| |输入=“”){
$('deactivedivEditor-2').attr(“禁用”、“禁用”);
}否则{
$(“#deactivedivEditor-2”).removeAttr(“禁用”);
}
});
});


如果任何字符串与任何行匹配,我如何禁用该按钮?我非常需要这个帮助。谢谢。

只需使用正则表达式检查
之间的任何内容,如下所示:

$(document).ready(function () {
    $('#inputdivEditor-2').keyup(function () {
        var input = $(this).val();
        var regex=/<*>/;
        if (regex.test(input)) {
            $('#deactivedivEditor-2').attr("disabled", "disabled");
        } else {
            $('#deactivedivEditor-2').removeAttr("disabled");
        }
    });
});
$(文档).ready(函数(){
$('#inputdivEditor-2').keyup(函数(){
var输入=$(this.val();
var regex=/;
if(正则表达式测试(输入)){
$('deactivedivEditor-2').attr(“禁用”、“禁用”);
}否则{
$(“#deactivedivEditor-2”).removeAttr(“禁用”);
}
});
});

您可以对禁用按钮使用
.prop('disabled',true)
,对启用按钮使用
.prop('disabled',false)
。两者都用在
$(“#deactivedEditor-2”)

之后。您可以使用
regex
检查文本是否包含特定模式

$(document).ready(function () {
    var regex = /<\/?style.*?>|<link.*?>/;
    $('#inputdivEditor-2').keyup(function () {
        var val = $(this).val();

        $('#deactivedivEditor-2').prop('disabled', regex.test(val));
    });
});
$(文档).ready(函数(){
var regex=/|/;
$('#inputdivEditor-2').keyup(函数(){
var val=$(this.val();
$('deactivedivEditor-2').prop('disabled',regex.test(val));
});
});
演示:

Regex

  • /
    :正则表达式的分隔符
  • \/?
    :匹配0或1
    /
  • *?
    :匹配任意字符任意次数
  • |
    :或在正则表达式中

  • 您可以使用以下正则表达式来匹配这些字符串

    var regex = /<(style|link)>/;
    
    var regex=/;
    
    当元素存在时禁用更新。然而,这并不能解决所有的问题。如果有人需要,他可以通过编写