HTTP协议的工作机制是一种请求响应式的,即客户端负责传送用户的表单信息到服务器,运行在服务器上的后台应用程序接收用户请求信息,进行处理以后发回响应信息。
对于表单结构较复杂的页面,前台与后台的协作比较重要。前台负责样式以及客户端JS的编写,同时在用户触发服务器访问时,将相应的后台所需的数据发送到服务器端。
所以表单数据是前台与后台之间进行协作的桥梁。对于简单的表单,可以直接使用表单控件来传递值。而对于复杂的表单结构,单纯通过表单控件来传递值会显得有些力不从心。
对于复杂的表单,一种比较好的工作模式如下:
1. 阅读文档,确定表单的功能。同时确定有哪些表单数据需要从页面传递到服务器应用程序。
2. 确定数据变量以后,将每一个所需的变量在页面上以:<input type="hidden" name="paramName" id="paramId"/>的形式列出,为方便维护,可以将其列于form的最开始处。
3. 这样前台应用程序不管如何更改JS函数和页面内容,只要保持这些hidden控件的name参数不变,就能成功将参数传递到后台。
4. 所有的前台页面编程就是设置页面动作,以及设置这些hidden变量。需要注意的一个问题是,这些hidden变量不要与已有的控件重名。这可以通过控制hidden控件name值的命名规范来实现,比如在其前加上val字样,如:valUserType