提醒输入特定值

时间:2013-07-23 12:45:02

标签: javascript jquery

如果用户输入特定值(%或*),我想显示错误/警告消息。如果用户只输入%或*并点击“提交”,则提示或消息应显示“不允许这样做”。但是,应该允许SM%TH或* MITH。

HTML

<input type="text" name="ANSWER.TTQ.MENSYS.3." id="ANSWER.TTQ.MENSYS.3." value="" class="forminfree">
<input type="submit" name="ANSWER.TTQ.MENSYS.7." id="ANSWER.TTQ.MENSYS.7." value="Search" class="formsubfree" style="width:100px" onclick="searchCheck()">

SCRIPT

function searchCheck(){
}

一如既往,您的帮助将受到高度赞赏。

4 个答案:

答案 0 :(得分:2)

试试这个:

function searchCheck(){
     var answer = $.trim($(this).find('input[type=text]').val());
     if(answer == '*' || answer == '%') alert('this is not allowed');
}

答案 1 :(得分:0)

首先获取值。使用jQuery:

var str = $("#ANSWER.TTQ.MENSYS.3.").val();

使用KY 没有jQuery:

var elem = document.getElementById("ANSWER.TTQ.MENSYS.3.");
var str = elem.value;

现在你看一下:

str = str.trim();
if (str == "*" || str == "%") {
    alert("This is not allowed. Get off my system!");
}

答案 2 :(得分:0)

访问具有点(。)的ID时可能会出现问题。为避免这种情况,您必须以这种方式使用$('#ANSWER\\.TTQ\\.MENSYS\\.3\\.')

  function searchCheck(){
         var answer = $.trim($('#ANSWER\\.TTQ\\.MENSYS\\.3\\.').val());
         if(answer == '*' || answer == '%') alert('this is not allowed');
    }

在这里演示:http://jsfiddle.net/Kk8GC/

答案 3 :(得分:0)

抓取字符串,检查前面的*或%,然后停止跟进**或%*但不是%%。

function searchCheck(){

var pos=0;
var error=false;
var prior=false;

while(pos<your_string.length && !error){
  if(prior){
    if(your_string.charAt(pos) == '*'){
      error = true;
    } else if(your_string.charAt(pos) != '%') prior = false;
  } else { 
    if(your_string.charAt(pos) == '%' || your_string.charAt(pos) == '*')
      prior = true;   
  }
  pos++;
}
if(error || (your_string.length==1 && prior)){
    alert("not allowed");
}

}