JQuery keyup事件没有启动

时间:2018-03-28 04:07:20

标签: python jquery flask bootstrap-4 keyup

我一直在尝试使用以下代码。

我想在输入信件时路由到/搜索,但代码不会重新路由。我看不出我做错了什么。

{% extends "bootstrap/base.html" %}

{% block title %} The Latin Library Search {% endblock %}


<script type="text/javascript" 
 src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"> 
</script>
<script type="text/javascript">
  var $SCRIPT_ROOT = {{ request.script_root|tojson|safe }};
  $(function() {
    var submit_form = function(e) {
      $.getJSON($SCRIPT_ROOT + '/search', {
        q: $('input[name="q"]').val()
      }, function(data) {
        $('#result').text(data.result);
      });
      return false;
    };

    $('a#submit').bind('click', submit_form);

    $('input[type=search]').bind('keyup', function(e) {
      if (e.keyCode) {
        submit_form(e);
      }
    });

  });
 </script>



 {% block content %}
 <div class="container">
<h1>Search engine for The Latin Library</h1>
<form >
    <div class="row">
        <div class="form-group">
            <label for="code">search with author name, book title or sentence</label>
            <input class="form-control input-lg" type="search" name="q">
        </div>
    </div>

    <div class="row">
        <a href="#"><button type="submit" id="submit" class="btn btn-default">Submit</button></a>
    </div>
</form>

<hr/>
 <span id=result>?</span>
</div>

  {% endblock %}

当我运行我的应用程序并输入字母'q'时,我得到以下日志:

 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 173-866-966
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
 127.0.0.1 - - [27/Mar/2018 17:28:47] "GET / HTTP/1.1" 200 -
 127.0.0.1 - - [27/Mar/2018 17:29:01] "GET /?q=q HTTP/1.1" 200 -

应该是:

127.0.0.1 - - [27/Mar/2018 17:29:01] "GET /search?q=q HTTP/1.1" 200 -

更新 我刚刚意识到'keyup'事件本身并没有被识别出来。

我仍然无法解决问题,我只是意识到其他可能是其原因。

1 个答案:

答案 0 :(得分:0)

这是一个简单的错误。

http: 
导入任何文件时不应使用

。 所以应该是。

<script type="text/javascript" 
 src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">