jQuery检测字符串是否包含某些内容

时间:2013-03-06 11:21:32

标签: jquery

我正在尝试编写jQuery代码来检测实时字符串是否包含一组特定字符,然后该字符串会提醒我。

HTML

<textarea class="type"></textarea>

我的Jquery

$('.type').keyup(function() {
    var v = $('.type').val();
    if ($('.type').is(":contains('> <')")){
        console.log('contains > <');        
    }
    console.log($('.type').val());
});

例如我输入以下内容

> <a href="http://google.com">Google</a> <a href="http://yahoo.com">Yahoo</a>

我的代码应该控制日志警告我那里&gt; &LT;出现在字符串中。

4 个答案:

答案 0 :(得分:33)

您可以使用String.prototype.indexOf来实现这一目标。尝试这样的事情:

$('.type').keyup(function() {
    var v = $('.type').val();
    if ( $('.type')[0].value.indexOf('> <') !== -1 ){
        console.log('contains > <');        
    }
    console.log($('.type').val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class="type"></textarea>

答案 1 :(得分:7)

您获得textarea的值,使用它:

$('.type').keyup(function() {
    var v = $('.type').val(); // you'd better use this.value here
    if (v.indexOf('> <')!=-1) {
       console.log('contains > <');        
    }
});

答案 2 :(得分:5)

您可以使用javascript的indexOf函数。

var str1 = "ABCDEFGHIJKLMNOP";
var str2 = "DEFG";
if(str1.indexOf(str2) != -1){
   alert(str2 + " found");
}

答案 3 :(得分:2)

使用包含jquery Contains 像这样

if ($('.type:contains("> <")').length > 0)
{
 //do stuffs to change 
}