#jquery #ajax #django-templates
#jquery #ajax #django-шаблоны
Вопрос:
Я пытаюсь получить значение поля ввода, но оно возвращает «None». Я не уверен, что вызывает эту проблему и чего мне не хватает. Может ли кто-нибудь, кто разбирается в этой теме, пожалуйста, просмотрите мой код и предоставьте подробное объяснение решения? Я новичок в программировании и был бы признателен за любые рекомендации по этому вопросу
<form method='POST'>
{% csrf_token %}
{% bootstrap_form search_form %}
</form>
<div id="search_results"><div>
<script>
var delayTimer;
$('#id_search').keyup(function() {
clearTimeout(delayTimer);
$('#search_results').text('Loading...');
delayTimer = setTimeout(function() {
var text = $("#id_search").val();
console.log(text,'search text');
$.ajax({
url:'{% url "videos:search_function" %}',
data:{
'search_term':text
},
dataType:'json',
success:function(data) {
$('#search_results').text(data['hello']);
}
});
},1000);
});
</script>
Если потребуется больше деталей, чем скажите мне, я обновлю свой вопрос с этой информацией.
Ответ №1:
ваш вопрос немного неполный. сначала вы должны указать, что если есть какой-либо ввод с id_search
идентификатором (опубликуйте свой окончательный html-код, который отображает браузер), тогда я бы предложил поместить ваш код в
$(document).ready(function(){
// here
})
Комментарии:
1. вот мой окончательный HTML-код поля поиска
<div class="form-group"><label class="control-label" for="id_search">Search</label><input type="text" name="search" maxlength="255" class="form-control" placeholder="Search" title="" id="id_search"></div>
2. Я предполагаю, что я использую правильный идентификатор и все в порядке, но не сохраняю текст в текстовой переменной
3. Я просто скопировал ваш код, и он работает просто отлично. Я предполагаю, что что-то не так с порядком включения скрипта jQuery. убедитесь, что вы импортировали скрипт jQuery и его тег над вашим тегом script. или опубликуйте его здесь, чтобы узнать больше.