EasyUI–表单 文本框 按钮

简介: 本篇重点介绍EasyUI框架下的表单和表单元素使用。

在开始使用EasyUI之前,要认清楚一个原则,因为EasyUI是封装的CSS及JS库,所以在修改EasyUI组件的样式和功能时,最好是采用EasyUI封装后的CSS样式和JS方法,而不是自己去写CSS和JS,这样不容易引起冲突,样式统一性也得到了保证。别忘了,如果我们自己再去写很多样式和方法,还要用前端框架干啥?


那么我们怎么知道啥时候用前端框架提供的样式和方法,什么时候没有提供这样的样式和方法,需要我们自己去写呢,这个就是经验了,需要我们去学习,当然对于计算机编程来说,最好的学习办法莫过于多写多练了。


好的,先来看一个表单的示例:

image.png

代码如下,先结合图片看下代码,有个整体的印象,之后会详细解释代码是如何实现的。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>formDemo.jsp</title>
    <link rel="stylesheet" type="text/css" href="easyui/themes/default/easyui.css">
  <link rel="stylesheet" type="text/css" href="easyui/themes/icon.css">
  <script type="text/javascript" src="easyui/jquery.min.js"></script>
  <script type="text/javascript" src="easyui/jquery.easyui.min.js"></script>
  <style type="text/css">
    .main_form{
      margin:32px auto;
      width:480px;
    }
    .input_container{
      margin-bottom:32px;
    }
  </style>
  </head>
  <body>
    <form class="main_form">
      <div class="easyui-panel" title="用户注册" style="padding:30px 60px;">
      <div class="input_container">
        <input class="easyui-textbox" label="用户名:" labelPosition="top" data-options="prompt:'请输入用户名',iconCls:'icon-man'" style="width:100%;height:52px">
      </div>
      <div class="input_container">
        <input class="easyui-textbox" label="密码:" labelPosition="top" data-options="prompt:'请输入密码',iconCls:'icon-lock'" style="width:100%;height:52px">
      </div>
      <div class="input_container">
        <input class="easyui-textbox" label="邮箱:" labelPosition="top" data-options="prompt:'请输入邮箱',validType:'email'" style="width:100%;height:52px">
      </div>
      <div class="input_container">
        <input class="easyui-textbox" label="个人简介:" labelPosition="top" multiline="true" style="width:100%;height:120px">
      </div>
      <div>
        <a href="#" class="easyui-linkbutton" iconCls="icon-ok" style="width:100%;height:32px">注册</a>
      </div>
    </div>
  </form>
  </body>
</html>

OK,解释如下:


1,首先注意,这是一个.jsp文件,所以第一行有<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>,注意中文环境,猫哥建议使用utf-8编码。还是那句话,不管是网页、后端、数据库,统一编码是非常有必要的。


2,表单的样式为class=main_form,在上面的样式编辑区对应.main_form选择器。再提醒一下,#main_form表示选择id=main_form的网页元素,.main_form表示选择class=main_form的网页元素,那直接写的比如body,表示原则网页中标签。


此处对应的样式代码为:margin:32px auto;width:480px;,表示宽度居中,有点上下边距,左右边距是自动,所以实现了整个form部分的宽度控制和居中显示。


3,现在需要一个标题栏了,提示用户现在的页面是用于登录的。此时有一个非常好用且常用的EasyUI组件,也是我们学习的第一个EasyUI组件,我们可以称之为panel,意思是面板。前面示意图中用户注册四个字所在的标题栏加上外面的一圈边框,就是我们使用的panel,仔细观察代码会发现其实本身就是一个<div class="easyui-panel" >


那么如何让一个普通的div或者其他网页元素变成EasyUI组件呢,很简单,通过class就能实现。只要给网页元素加上class=“easyui-xxx”,这个元素就按easyui设定好的样式显示了。此处代码为:<div class="easyui-panel" title="用户注册" style="padding:30px 60px;">,easyui-panel将div的样式设置成了面板,然后title用户注册将面板的标题设置为了用户注册,最后还补充了style样式属性,设置了内边距。此处需要注意的是,如果一个网页元素应用了class=easyui-xxx,如果还想改变其样式,比如改变内边距,那就直接在style属性里面修改,不要去改动easyui-xxx的样式,因为那都是EasyUI框架封装好的,不要动。


4,有了面板之后,猫哥想往面板里面依次添加用户名、密码等输入框,为了使面板里面的输入框有固定的下边距,更加美观,在每个输入框外面设置了div,并编辑样式为:margin-bottom:32px;,这个比较简单,不再详述。


5,然后就是文本输入框了,使用easyui-textbox样式即可。需要重点注意data-options,该属性往往是补充了EasyUI组件的功能,里面的内容是以逗号分割的键值对。例如data-options="prompt:'请输入用户名',iconCls:'icon-man'",意思就是文本框提示为请输入用户名,使用图标是icon-man。


6,要明白图标是怎么来的,很简单,在head区域我们引用了<link rel="stylesheet" type="text/css" href="easyui/themes/icon.css">,此时我们打开icon.css代码,发现:


.icon-man{

background:url('icons/man.png') no-repeat center center;

}

1

2

3

这下,你应该懂得如果要自定义图标,该往哪个目录添加图片,又该如何定义class的名字跟图片产生关联了吧。


7,注意data-options的功能还是挺强的,比如validType:‘email’,直接就验证了邮箱输入框格式是否正确,不正确的话还会自动提示,赞一个。


8,最后,<a href="#" class="easyui-linkbutton" iconCls="icon-ok" style="width:100%;height:32px">登录</a>,就很好理解了,easyui-linkbutton表示链接按钮,iconCls表示图标。


9,如果图标设计的好看而优雅,更换掉easyui默认图标后,最后出来的网页还是蛮有个性的。


最后总结下,学习EasyUI,在具备了较好的CSS和Javascript与jQuery基础后,其实就是记忆一些组件的名字easyui-xxx,然后记忆一些具体的属性设置就好了。

相关文章
|
前端开发
10EasyUI 菜单与按钮- 创建链接按钮(Link Button)
10EasyUI 菜单与按钮- 创建链接按钮(Link Button)
88 0
|
JavaScript 前端开发
12EasyUI 菜单与按钮- 创建分割按钮(Split Button)
12EasyUI 菜单与按钮- 创建分割按钮(Split Button)
92 0
|
JavaScript
EasyUI的datagrid每行数据添加操作按钮的方法
EasyUI的datagrid每行数据添加操作按钮的方法
245 0
|
存储
65EasyUI 表单 - 过滤下拉数据网格
65EasyUI 表单 - 过滤下拉数据网格
56 0
64EasyUI 表单 - 格式化下拉框
64EasyUI 表单 - 格式化下拉框
40 0
|
JavaScript
63EasyUI 表单 - 创建树形下拉框
63EasyUI 表单 - 创建树形下拉框
78 0
62EasyUI 表单 - 表单验证
62EasyUI 表单 - 表单验证
42 0
|
前端开发
61EasyUI 表单 - 创建异步提交表单
61EasyUI 表单 - 创建异步提交表单
46 0
|
JavaScript 前端开发
49EasyUI 窗口- 自定义带有工具条和按钮的对话框
49EasyUI 窗口- 自定义带有工具条和按钮的对话框
48 0
|
JavaScript 前端开发
11EasyUI 菜单与按钮- 创建菜单按钮(Menu Button)
11EasyUI 菜单与按钮- 创建菜单按钮(Menu Button)
75 0