У меня есть набор кнопок Bootstrap Twitter в веб-приложении, мне нужно передать выделение в Flask, и я не хочу использовать кнопку отправки.Обработка Twitter Bootstrap Events with Flask
<div id="radios1" class="btn-group view-opt-btn-group" data-toggle="buttons-radio">
<button type="button" class="btn active" name="choice1" value="A">A</button>
<button type="button" class="btn" name="choice1" value="B">B</button>
<button type="button" class="btn" name="choice1" value="C">C</button>
<button type="button" class="btn" name="choice1" value="D">D</button>
<button type="button" class="btn" name="choice1" value="E">E</button>
</div>
Twitter bootstrap автоматически обновляет параметр class = "btn active", в зависимости от щелчка. Но как передать выбранную кнопку в Flask? Я бы хотел, чтобы кнопка нажала кнопку вызова функции в флеш-приложении (функция python) и обновила конкретный параметр, но я не хочу перезагружать всю веб-страницу при каждом нажатии.
Я видел некоторые решения, которые имеют скрытую кнопку, с помощью функции JQuery, который обновляет значение скрытой кнопки, но как это выбор получить передается в колбу:
<div id="radios1" class="btn-group view-opt-btn-group" data-toggle="buttons-radio">
<button type="button" class="btn active" name="choice1" value="A">A</button>
<button type="button" class="btn" name="choice1" value="B">B</button>
<button type="button" class="btn" name="choice1" value="C">C</button>
<button type="button" class="btn" name="choice1" value="D">D</button>
<button type="button" class="btn" name="choice1" value="E">E</button>
<input type="hidden" name="choice1" value={{request.form['choice1']}} />
</div>
<script type="text/jscript">
$("body").find("#radios1").children().each(function() {
$(this).bind('click', function() {
$("input[name=choice1]").val(this.value);
});
});
</script>
Спасибо!
Знаете ли вы, что такое AJAX? – Pigueiras
точно, но есть ли хороший пример для обработки выбранной кнопки через Flask? – vgoklani
Просто выполните HTTP-запрос от Javascript при изменении состояния кнопки (это может быть очень просто, если вы используете фреймворк Javascript). Затем напишите обработчик для этого самого запроса в своем флеш-приложении и выполните обработку, которую вы хотите сделать. – lc2817