白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连续7-电话问卷调查
【例7-3 文本编辑框创建一个简单的调查问卷】
01 <!DOCTYPEhtml>
02 <html>
03 <head>
04 <metahttp-equiv="Content-Type" content="text/html;charset=utf-8" />
05 <title>调查问卷</title>
06 <metaname="viewport" content="width=device-width,initial-scale=1">
07 <linkrel="stylesheet" href="http://code.jquery.com/mobile/latest/jquery.mobile.min.css"/>
08 <scriptsrc="http://code.jquery.com/jquery-1.7.1.min.js"></script>
09 <scriptsrc="http://code.jquery.com/mobile/latest/jquery.mobile.min.js"></script>
10 </head>
11 <body>
12 <div data-role="page">
13 <divdata-role="header">
14 <h1>调查问卷</h1> <!—先加上一个头部栏和标题—>
15 </div>
16 <divdata-role="content">
17 <formaction="#" method="post">
18 <!--placeholder属性的内容会在编辑框内以灰色显示-->
19 <inputtype="text" name="xingming" id="xingming"placeholder="请输入你的姓名:"/>
20 <!--当data-clear-btn的值为true时,当该编辑框被选中-->
21 <!--能够单击右側的button将当中的内容清空-->
22 <inputtype="tel" name="dianhua" id="dianhua"data-clear-btn="true" placeholder="请输入你的电话号码:">
23 <labelfor="adjust">请问您对本书有何看法?</label>
24 <!—这里用到了textarea而不是input-->
25 <textareaname="adjust" id="adjust"></textarea>
26 <!—通过for属性与textarea进行绑定-->
27 <labelfor="where">请问您是在哪里得到这本书的?</label>
28 <!--使用label时要使用for属性指向其相应控件的id-->
29 <textareaname="where" id="where"></textarea>
30 <ahref="#" data-role="button">提交</a>
31 </form>
32 </div>
33 </div>
34 </body>
35 </html>
执行结果如图7-4所看到的。
当在编辑框中输入内容时,页面会发生一定的变化。如页面上方输入姓名和电话的两个编辑框中的文字会自己主动消失。要求填写电话信息的编辑框右側会出现一个“删除”的图标,单击该图标,编辑框中的内容会被自己主动删除。
另外,页面下方两个编辑框的内容会随着当中内容的行数而自己主动添加高度。
在问卷中填入数据后的页面如图7-5所看到的。之所以会带来这些变化是因为。jQuery Mobile为文本编辑框设置了一些属性。如placeholder属性中的内容即是当编辑框未被使用时在当中显示的内容。
而当用户在编辑框中输入数据之后,placeholder所标注的内容会自己主动消失。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYm9va3poYW9waW4=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
图7-4 简单的手机调查问卷 图7-5 在问卷中填入内容
在本范例中新用到的控件textarea,能够觉得是一种定义了多行文本的文本编辑控件。它能够依据当中的内容自己主动调整自身的高度,同一时候也能够通过拖拽的方式对其大小进行调整。
另外有读者或许会注意到在输入电话的编辑框中,笔者将空间的type属性设置为了tel。这样就会在用户输入当中内容时,自己主动将输入法切换到数字键盘,方便用户使用。
另外,jQueryMobile还提供了一些其他属性。表7-1他们一一列举出来,对于读者。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连续7-电话问卷调查的更多相关文章
- 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载一(PhoneGap中的API)
之前本博连载过<构建跨平台APP:jQuery Mobile移动应用实战>一书.深受移动开发入门人员的喜爱. 从如今開始,连载它的孪生姐妹书phoneGap移动应用实战一书,希望以前是小白 ...
- 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载四(使用程序载入事件)
在了解了PhoneGap中都有哪些事件之后,本节将開始对这些事件的使用方法进行具体地介绍.本节要介绍的是程序载入事件,也就是deviceready.pause和resume这3个事件. [范例4-2 ...
- 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载五(使用PhoneGap获取设备信息)
除了能够将HTML页面打包成可以直接安装运行的APP外,PhoneGap的一个最大优势在于可以通过JavaScript调用设备来访问设备上的硬件信息,从而实现一些原本只有依靠原生SDK才能够达到的目的 ...
- 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载三(通过实例来体验生命周期)
4.1.2 通过实例来亲身体验Activity的生命周期 上一小节介绍了Activity生命周期中的各个过程,本小节将以一个简单的实例来使读者亲身体验到Activity生命周期中的各个事件. 在Ec ...
- 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载二(生命周期)
4.1 什么是生命周期 想要真正地理解PhoneGap应用开发的内涵,首先需要理解什么是生命周期.这在字面上其实非常容易理解,一个应用从开始运行被手机加载到应用被退出之间的过程就称之为一个生命周期.为 ...
- 白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》串行4(场景变化)
作为一个真正的利用价格值应用,首先,你应该至少有两页,通过切换页面来实现很多其他互动.比如手机人人网,首先,打开后进入登录页面,将有登录后,新的东西.然后拉左侧面板.你可以看到相册.私人信息.像其他应 ...
- 【原创】小白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连载五(给按钮加图标)
在范例5-4所使用的导航栏中,已经为按钮加入了图标的样式,但是当时并没有介绍按钮的图标究竟是怎么一回事.下面截取范例5-4中导航栏部分的代码: <divdata-role="foote ...
- 小白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连载四(场景切换)
作为一款真正有使用价值的应用,首先应该至少有两个页面,通过页面的切换来实现更多的交互.比如手机人人网,打开以后先是进入登录页面,登录后会有新鲜事,然后拉开左边的面板,能看到相册.悄悄话.应用之类的其他 ...
- jquery Mobile应用第2课《构建跨平台APP:jQuery Mobile移动应用实战》连载二(简单的QWER键盘)
在jQuery Mobile的布局中,控件大多都是单独占据页面中的一行,按钮自然也不例外,但是仍然有一些方法能够让多个按钮组成一行,比如说在范例6-5中就利用按钮分组的方法使4个按钮并列在一行中,如图 ...
- jqueryMobile应用第一课《构建跨平台APP:jQuery Mobile移动应用实战》连载一(Hello World)
有人说每个程序员都曾经有过改变世界的梦想,笔者认为,这与程序员年轻时编写的第一个程序有着莫大的关系.简简单单的一句“hello world”让年轻的心开始相信梦想,用一种低调的壮志凌云向世界展示自己的 ...
随机推荐
- ASP.NET MVC的跳转攻击问题
在ASP.NET MVC的自带的模板代码中,有这样一段,用来拦截非登录用户,使其跳转到登录页面,然后登录后在跳转回原页面.所以,期间有一个returnUrl参数用来保存原页面地址.在Login Act ...
- linux内核笔记-内核同步
linux内核就相当于不断对请求进行响应的服务器,这些请求可能来自CPU,可能来自发出中断的外部设备.我们将内核看作两种请求的侍者. (1)老板提出请求,侍者如果空闲,为老板服务.(系统调用或异常) ...
- GitHub基本操作(转)
一.上传代码到仓库 步骤一:创建本地仓库,如下: 创建结果: 步骤二:发布自己创建的仓库,如下: 发布完显示如下: 步骤三:向自己发布仓库上传代码,如下: 首先将代码复制到本地仓库,如下: 复制完,显 ...
- VB6.0数据库开发五个实例——罗列的总结
实例一: 系统登录对话框 设计分析:数据库管理系统登录对话框两种基本方法:数据库中建立数据表用于保存系统用户登录信息:支持安全验证的数据库管理系统,可将系统用户定义为数据库用户. 技术要领:1.Ent ...
- Python的Tkinter将窗口置顶
root = Tk()root.wm_attributes('-topmost',1)
- HDU3977(斐波那契数列模n的循环节长度)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=3977 题意:求斐波那契数列模p的循环节长度,注意p最大是2*10^9,但是它的素因子小于10^6. 分析过 ...
- Cannot instantiate the type List<Integer>
在使用java.util.List; 的时候,把语句写成了: List<Integer> arr = new List<Integer>(); 导致错误: Cannot ins ...
- Linux内核——进程管理与调度
进程的管理与调度 进程管理 进程描写叙述符及任务结构 进程存放在叫做任务队列(tasklist)的双向循环链表中.链表中的每一项包括一个详细进程的全部信息,类型为task_struct,称为进程描写叙 ...
- Knockout应用开发指南 第十章:更多信息(完结篇)
原文:Knockout应用开发指南 第十章:更多信息(完结篇) 1 浏览器支持 Knockout在如下浏览器通过测试: Mozilla Firefox 2.0+(最新测试版本:3.6.8) Goo ...
- mybatis 打印SQL语句
在log4j文件中配置 log4j.rootLogger=DEBUG log4j.logger.com.ibatis=DEBUG log4j.logger.org.mybatis=DEBUG