[英]Javascript file/Jquery not being rendered
我很确定我呈现文件的方式有问题,因为其他所有内容看起来都很稳定,请告诉我是否存在问题。 自从我使用keyup以来,我的栏上什么都没有出现。 我什至没有一个错误,我认为这意味着没有呈现jquery。 这是我的代码
javascript文件
$(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);
}
index.html
{% csrf_token %}
<input type="text" id="search" name="search" />
<ul id="search-results">
</ul>
我将ID匹配为搜索,但没有任何显示
我的javascript文件位于我的静态文件夹中->另一个static-> js>然后是ajax.js,所以这就是我的做法<script src="{% static 'js/ajax.js' %}"></script>
不知道我的python代码是否正确,因为它根本没有被渲染。 这是我的python代码
def search_titles(request):
if request.method == "POST":
search_text = request.POST['search_text']
else:
search_text = ""
categories = Category.objects.filter(name__contains=search_text)
return render_to_response('ajax_search.html',{'categories':categories})
ajax search.html是
{% if categories.count > 0 %}
{% for category in categories %}
<li><a href="/category/{{post.category}}">{{ category.title }}</a></li>
{% endfor %}
{% else %}
<li>None to show!</li>
{% endif %}
我认为您想使用自调用匿名函数,但实际上您忘了调用它。
$(function(){
...
})();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.