Ваш вопрос показывает некоторое недоразумение относительно того, как работает web applications.
Пользователь должен ввести адрес в браузере, чтобы перейти к приложению. Это отправляет запрос на сервер. Код сервера (написанный на python) получает этот запрос и имеет возможность отправить ответ. Ответ - это документ, обычно написанный в HTML. Некоторые части этого документа могут быть динамическими, то есть сгенерированы кодом python. Другие части документа могут быть статическими. Затем браузер отображает документ в окне пользователя.
После этого единственный способ, которым ваш код на Python может знать о том, что происходит в окне браузера, или для запуска любой части кода python, заключается в том, чтобы заставить браузер отправить другой запрос.
Это может произойти во многих ситуациях, наиболее распространенными из которых являются:
- пользователь нажимает на ссылку на другой URL, что делает браузер отправить еще запрос на этот новый адрес.
- Пользователь нажимает на кнопку
submit
, что делает браузер отправить форму как запрос к заданному адресу в атрибуте формы в action
.
- Некоторый код на фактической странице, обычно написанный в ECMAscript (также известный как javascript), делает запрос под капотом.
Последний - это то, что вы хотите. Вы должны написать в javascript некоторый код, чтобы браузер отправил информацию, выбранную при выпадающем списке на сервер. Таким образом, ваш код python на сервере может что-то с этим поделать.
Простой способ сделать это, сделав onchange
событие выпадающего сделать представить:
<select name='myfield' onchange='this.form.submit()'>
<option .... >
...
</select>
</form>
Таким образом, когда пользователь изменяет значение на раскрывающемся меню, форма будет занесена в если пользователь нажал кнопку «Отправить». Будет запущен код Python на сервере. Браузер загрузит ответ.
Другим популярным способом было бы использовать API-интерфейс XmlHTTPRequest javascript для отправки запроса. Таким образом, вы можете получить значение в python и отправить ответ, который, в свою очередь, будет получен кодом javascript в браузере. Этот код может изменять часть страницы на основе ответа, без изменения всей страницы. Этот метод называется AJAX.
Если вы планируете написать много кода javascript, я настоятельно рекомендую использовать библиотеку javascript, по крайней мере, для облегчения боли при работе со многими версиями браузера. jQuery - это моя библиотека.
. Другими словами, код, написанный на javascript в браузере , содержит ссылки на код, написанный на python, запущенном на сервере.
Большое спасибо! это сработало. и специальную благодарность за дополнительную информацию. Я новичок .... – Tom