如果用户输入与使用本机js的锚标记的文本匹配,则验证用户输入

时间:2015-08-07 14:39:45

标签: javascript html

我有一个表单字段: 1 - 输入文字和按钮......

<form action="#">
   <input type="text" id="desc" value="">
   <input name="submit" tabindex="1" value="Update" type="submit" onclick="validate()">            
</form>

这是我的锚标记

<ul>        
    <li><a class="gen"  href="#"> Jan</a></li>
    <li><a class="gen"  href="#"> Feb </a></li>
    <li><a class="gen"  href="#"> March </a></li>
</ul>

有没有办法在javascript中检查输入的值并匹配锚标记的值?

如果匹配,则alert(match)。如果没有,那么alert(not)

不区分大小写 - 如果输入值为"jan""jAn",则仍然匹配。

3 个答案:

答案 0 :(得分:0)

您可以尝试使用以下代码

&#13;
&#13;
$("#valid").click(function(e) {
  e.preventDefault();
  var f = 0;
  $(".gen").each(function() {
    if ($(this).text().toLowerCase().trim() === $("#desc").val().toLowerCase().trim()) {
      f = 1;
      alert("match");
    }

  });
  if (f == 0)
    alert("No Match");


})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="#">
  <input type="text" id="desc" value="">
  <input name="submit" id="valid" tabindex="1" value="Update" type="submit">
</form>
and here is the my anchor tag

<ul class="tags">
  <li><a class="gen a" href="#"> Jan</a>
  </li>
  <li><a class="gen" href="#"> Feb </a>
  </li>
  <li><a class="gen" href="#"> March </a>
  </li>
</ul>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

这应该是纯JavaScript解决方案

function validate(){
    var val = document.getElementById("desc").value.trim().toLowerCase();
    var a_list = document.getElementsByClassName("gen");
    var content;
    for(var i=0;i<a_list.length;i++){
        content = a_list[i].innerHTML.trim().toLowerCase();
        if(content == val){
            alert('match');
            return;
        }
    }
    alert('no match');
    return;
}

jsFiddle

答案 2 :(得分:0)

function validate() {
    var flag = false;
    var x = document.getElementById("desc");
    x = x.value;
    var y = document.getElementsByClassName("gen");
    for (var i = 0; i < y.length; i++) {
        if(x.toLowerCase().trim() == y[i].innerHTML.toLowerCase().trim()){
            flag = true;
        }
    }
    if (flag) {
        alert("y");
    } else {
        alert("n");
    }
}

你走了。这应该有用。