Найти - Пользователи
Полная версия: ajax и django
Начало » Django » ajax и django
1 2
svas
Интересует вопрос, как сделать “динамическую” форму поиска? Например как вот здесь http://code.djangoproject.com/query
dissdoc
Хаха.. сам только до конца разобрался с этим.
На первых порах я б на вашем месте воспользовался вот этим http://code.google.com/p/django-ajax-forms/
expee
….

пардон, не туда глянул.
svas
посмотрел вторую ссылку, может что-то не понял, а при чем autocomplete?
Насчет первой ссылки, спасибо, но хотелось бы самому разобраться. Мне интересен сам механизм.
svas
Посмотрел повнимательней и первую ссылку, не нашел то, что мне нужно
dissdoc
Почему? Не понятно. Я так понимаю вы хотите реализовать такой алгоритм
1. вводим в форму запрос
2. отправляем данные на сервер, не обновляя страницу целиком
3. обрабатываем запрос на сервере
4. возвращаем странице результаты запроса
5. обновляем эту/другую часть страницы.
Разве нет?
svas
ну примерно да.
я хочу чтобы форма поиска была динамичной. т.е. выбираем первый параметр поиска, вводим критерий, выбираем второй параметр, вводим.
параметры должны выбираться в компоненте ComboBox (точно не знаю как называется), и только после этого добавляться на форму.
По ссылке, которую я приводил в первом посте, форма filters. Вот такую я хочу.
dissdoc
ааа, я понял что вы хотите. Динамически добавлять поля в форму.
Но в этом нет ничего сложного. с помощью jQuery напишите функцию добавления нового input-поля.
Сейчас не помогу, если завтра не помогут, я ссылку дам.. в документации к jquery есть подобные решения. пока почитайте сами.
Я напишу такую штуку завтра. Просто сейчас у меня температура и я думать не хочу :)
svas
спасибо. выздаравливайте
wonderfulll
Дабы не напрягать больного человека :)
Простой пример реализующий интересующую вас функциональность.
<html>
<head>
<script type="text/javascript" src="jquery-1.4.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#dynamic-form").change(function() {
value = $("option:selected", this).val();

switch(value) {
case 'input':
$('#dynamic-form').append('<p><input type="text" value="input" /><a href="#">remove</a></p>');
break;
case 'checkbox':
$('#dynamic-form').append('<p><input type="checkbox" value="checkbox">checkbox <a href="#">remove</a></p>');
break;
}

$('#selector').val('none');
});

$("a").live('click', function() {
$(this).parent('p').remove();
});

$('#selector').val('none');
});
</script>
</head>
<body>
<form id='dynamic-form'>
<select id='selector'>
<option value='none'></option>
<option value='input'>add input field</option>
<option value='checkbox'>add checkbox</option>
</select>
</form>
</body>
</html>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB