当前位置:  开发笔记 > 编程语言 > 正文

从html表单的下拉框中获取选定的值而不提交

如何解决《从html表单的下拉框中获取选定的值而不提交》经验,为你挑选了1个好方法。

如何从html表单中的下拉框元素中获取所选项目的文本?(使用python)当我使用鼠标从下拉框中选择一个项目时,如何将值存储到变量?(即不使用提交按钮)

这是我在app引擎中执行的应用程序,它只支持Python.



1> nosklo..:

您的问题显示了对Web应用程序如何工作的一些误解.

用户必须在浏览器中键入地址才能访问应用程序.这会向服务器发送请求.服务器代码(用python编写)接收此请求并有机会发送答案.答案是通常用HTML编写的文档.本文档的某些部分可以是动态的,即由python代码生成.文档的其他部分可以是静态的.然后,浏览器在用户窗口上呈现文档.

在那之后,你的python代码可以知道浏览器窗口上发生的事情或运行python代码的任何部分的唯一方法是让浏览器发送另一个请求.

在许多情况下都会发生这种情况,最常见的情况是:

用户点击指向另一个网址的链接,使浏览器向此新网址发送另一个请求.

用户单击submit按钮,使浏览器将表单作为请求提交到表单action属性中配置的地址.

实际页面中的一些代码,通常用ECMAscript(也称为javascript)编写,在引擎盖下提出请求.

后者就是你想要的.您必须在javascript中编写一些代码才能使浏览器将下拉的信息发送到服务器.这样你的服务器上的python代码可以做些什么.

这样做的简单方法是onchange将下拉事件做为提交:



这样,当用户更改下拉列表中的值时,表单将被提交,就像用户单击提交一样.服务器上的Python代码将运行.浏览器将加载答案.

另一种流行的方法是使用javascript的XmlHTTPRequest DOM API发送请求.这样你就可以在python中收到值并发送一个答案,而答案又会被浏览器中的javascript代码接收.该代码可以根据答案更改页面的某些部分,而无需更改整个页面.这种技术称为AJAX.

如果你打算写很多javascript代码,我强烈建议至少使用javascript库来减轻处理许多浏览器版本的痛苦.jQuery是我的首选库.

换句话说,在浏览器中运行的javascript编写的代码与在服务器中运行的python编写的代码进行对话.

推荐阅读
依然-狠幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有