Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在本教程中,ajax.js keyup函数工作异常出色,但未激活_Javascript_Jquery_Ajax_Django - Fatal编程技术网

Javascript 在本教程中,ajax.js keyup函数工作异常出色,但未激活

Javascript 在本教程中,ajax.js keyup函数工作异常出色,但未激活,javascript,jquery,ajax,django,Javascript,Jquery,Ajax,Django,我有一个搜索引擎,除了这个键控功能外,它可以正常工作。当用户键入输入时,它应该显示单词(例如,如果我键入a,那么搜索栏应该显示以a开头的结果),但这个功能不起作用。我必须键入所有单词,然后输入以获得结果。为此,我回到jquery教程,但我仍然不明白。先谢谢你 这是我的js代码 $(function(){ $('#search').keyup(function() { $.ajax({ type: "POST", url:

我有一个搜索引擎,除了这个键控功能外,它可以正常工作。当用户键入输入时,它应该显示单词(例如,如果我键入a,那么搜索栏应该显示以a开头的结果),但这个功能不起作用。我必须键入所有单词,然后输入以获得结果。为此,我回到jquery教程,但我仍然不明白。先谢谢你

这是我的js代码

$(function(){

    $('#search').keyup(function() {

        $.ajax({
            type: "POST",
            url: "/search/",
            data: { 
                'search_text' : $('#search').val(),
                'csrfmiddlewaretoken' : $("input[name=csrfmiddlewaretoken]").val()
            },
            success: searchSuccess,
            dataType: 'html'
        });

    });

});

function searchSuccess(data, textStatus, jqXHR)
{
    $('#search-results').html(data);
}
那么要调用这个代码,我有

<script type="text/javascript" src="{% static 'js/ajax.js' %}"></script>

我的索引html中还有更多内容

<h3>Search</h3>
{% csrf_token %}
<input type="text" id="search" name="search" />

<ul id="search-results">

</ul>
搜索
{%csrf_令牌%}
使用此代码时,不会显示任何内容。 但是在我的search.html搜索引擎中,代码如下

<form method="get" action=".">
    <table>
        {{ form.as_table }}
        <tr>
            <td>&nbsp;</td>
            <td>
                <input type="submit" value="search">
            </td>
        </tr>
    </table>

    {% if query %}
        <h3>result</h3>

        {% for result in page.object_list %}
            <p>
                <a href="{{ result.object.get_absolute_url }}">{{ result.object.name }}</a>
            </p>
        {% empty %}
            <p>no result</p>
        {% endfor %}

        {% if page.has_previous or page.has_next %}
            <div>
                {% if page.has_previous %}<a href="/category/{{post.category}}">{% endif %}&laquo; Previous{% if page.has_previous %}</a>{% endif %}
                |
                {% if page.has_next %}<a href="/category/{{post.category}}">{% endif %}Next &raquo;{% if page.has_next %}</a>{% endif %}
            </div>
        {% endif %}
    {% else %}
        {# Show some example queries to run, maybe query syntax, something else? #}
    {% endif %}
</form>

{{form.as_table}}
{%if查询%}
结果
{page.object_list%}中的结果为%

{%empty%} 没有结果

{%endfor%} {%如果page.has_previous或page.has_next%} {%if page.has_previous%}{%endif%} | {%if page.has_next%}{%endif%} {%endif%} {%else%} {#显示一些要运行的示例查询,可能是查询语法,或者其他内容?#} {%endif%}

请忽略上面的{}代码,因为它们是django。我的问题是如何使用jquery函数在index或search.html中工作?我的目标是在索引页中使用搜索引擎,但它就是不起作用,所以我想在我的搜索中使用keyup函数。html//提前谢谢你

你的绑定方法曾经在
onload
函数中被调用过吗? 如果没有,我建议这样做。如果您不习惯在页面加载上设置绑定,可以直接将处理程序添加到html标记:

function handle_keyup() {

        $.ajax({
            type: "POST",
            url: "/search/",
            data: { 
                'search_text' : $('#search').val(),
                'csrfmiddlewaretoken' : $("input[name=csrfmiddlewaretoken]").val()
            },
            success: searchSuccess,
            dataType: 'html'
        });

    }
在模板中:

<input type="text" id="search" name="search" onkeyup="handle_keyup()"/>


谢谢你的另一篇文章,但我不知道你在上面说的是什么意思。你现在可以聊天吗?哦,天哪,我必须有至少20个声誉才能聊天,我们可以通过gmail进行吗?他们有在线聊天系统,我的电子邮件是rladudrb111@gmail.comhello你在吗?你好,我在gmail聊天上给你发了一个邀请