单击按钮时,如果(文本区域(输入)===“某事”),则重定向到另一页

时间:2016-12-12 04:18:37

标签: javascript jquery dom

这是我接近它的方式。请帮忙:

搜索

<script type="text/javascript">
    var criteria = document.getElementById("search").val().toLowerCase();

    if (criteria == "crosshatching") {
        document.getElementById("searchBtn").onclick = function() {
            window.location.href = "https://www.youtube.com/watch?v=117AN3MQuVs";
        }
    }
</script>

2 个答案:

答案 0 :(得分:1)

函数内部没有变量criteria的范围。 另外.val()用于jQuery,而是使用Javascript的.value 我修改了你的代码。 请检查以下工作代码:

  document.getElementById("searchBtn").onclick = function() {
    var criteria = document.getElementById("search").value.toLowerCase();

    if (criteria == "crosshatching") {
      alert("Matching");
      window.location.href = "https://www.youtube.com/watch?v=117AN3MQuVs";
    } else {
      alert("NOT Matching");
    }
  }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea name="search" id="search"></textarea>
<button id="searchBtn">Search</button>

答案 1 :(得分:0)

您需要检查内部事件处理程序的值。此外,正如评论中所指出的,使用value代替val()

&#13;
&#13;
document.getElementById('searchBtn').addEventListener('click', function() {
    var criteria = document.getElementById('search').value.toLowerCase();
    if (criteria === "crosshatching") {
        console.log('You would be redirected here!')
        location.href = 'https://www.youtube.com/watch?v=117AN3MQuVs'
    } else {
        console.log('No redirect. You wrote: ' + criteria)
    }
})
&#13;
<input id="search" type="text"/>
<button id="searchBtn">Search</button>
&#13;
&#13;
&#13;