关于layui框架的form表单布局(小白向)

本文介绍了layui框架中form表单的基本用法,包括form模块的声明、常见类的应用及布局技巧,帮助初学者快速掌握表单元素的样式控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

form表单的使用

在使用form表单的时候,必须先声明form模块,否则select、checkbox、radio等将无法显示,并且无法使用form相关功能,这是很多小白一开始经常犯的错误,虽然这很简单但也很基础,所以有必要在这里提一下

form模块声明

<script> layui.use('form', function () { var form = layui.form; form.render(); }); </script>

在form使用class="layui-form"

<from class="layui-form"></from>

   
   
  • 1

在from里面,我们通常使用这三个类(其他地方也一样)

class="layui-元素名-item"
class="layui-元素名-inline"
class="layui-元素名-block"

   
   
  • 1
  • 2
  • 3

比如layui-form-item单独使用这个类会默认该元素独占一行,如

 <form class="layui-form">
        <div style="padding: 20px; background-color: #F2F2F2;">
            <div class="layui-form-item">
                <input type="text" class="layui-input">
            </div>
        </div>
    </form>

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

效果如下

在这里插入图片描述

这是单独一行的文本框,当然这样并不好看,通常我们会把它和标签一起使用

<form class="layui-form">
        <div style="padding: 20px; background-color: #F2F2F2;">
            <div class="layui-form-item">
                <label class="layui-input-inline">标签:</label>
                <input type="text" class="layui-input">
            </div>
        </div>
    </form>

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

效果如下

在这里插入图片描述

这时候我们发现,这两个东西并没有并在一排,我们通常需要给input外面添加一个class="layui-input-block"的div

<div class="layui-input-block">
                    <input type="text" class="layui-input">
                </div>

   
   
  • 1
  • 2
  • 3

这时候这两个元素就会排成一排

在这里插入图片描述

这是因为layui-input-block这个类是一个表单元素占一行,竖着,以例表的形式排列。然后配合layui-form-item的使用,使这两个元素处在同一行。

但通常来讲,我们不需要这么长的input,我们可以把外面的div的类换成class="layui-input-inline"试试

<div class="layui-input-inline">
                <label class="layui-input-inline">标签:</label>
                <div class="layui-input-block">
                    <input type="text" class="layui-input">
                </div>
 </div>

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述

class="layui-input-inline"允许多个表单控件占一行,横着,一行可以放置多个表单元素

让我们多复制几段看看效果

在这里插入图片描述

如果我想让它们竖下来排呢?别忘了上面讲到的layui-input-block

在这里插入图片描述

但是这样并不好看,我们通常是这样使用

 <div class="layui-form-item">
                <div class="layui-inline">
                    <label class="layui-form-label">标签:</label>
                    <div class="layui-inline">
                        <input type="text" class="layui-input">
                    </div>
                </div>
            </div>

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述

一般来讲,添加不同元素名和默认的layui-inline的效果是不一样的,这个就需要大家多加试验来挑选合适自己的类。

以上是我的一些心得总结,后续我还会更新其他的关于layui框架的博客,希望能帮助到更多刚入门的同学,谢谢大家的支持!

form表单元素包括:text 文本输入框,password密码输入框,checkbox复选框,radio单选框,file 文件域,submit表单提交action指向的文件,reset表单清空,image图片提交按钮,button按钮,hidden隐藏域。 select option select 实现下拉选 callback 是回调函数 layui.模块   模块可以是layui已经存在的模块,也可以通过layui.define([mods], callback) 来自己自定义模块。 如果想要使用模块首先要做的必然是加载模块,layui.use(['laypage', 'layedit'], function(){}); 接下来使用layui风格控件  其实感觉layui帮我们定义好了CSS和许多JS文本,我们需要做的只是按照layui的命名规范选好样式进而使用就可以了。  layu官方文档的命名规范为: CSS命名规范 class命名前缀:layui,连接符:-,如:class="layui-form" 命名格式一般分为两种: 一:layui-模块名-状态或类型 二:layui-状态或类型 因为有些类并非是某个模块所特有,他们通常会是一些公共类。如: 一(定义按钮的原始风格):class="layui-btnlayui-btn-primary" 二(定义内联块状元素):class="layui-inline" 1 2 3 4 5 6 7 8 9 当然还有前面提到的使用模块的js代码: layui.use(['form', 'layedit', 'laydate'], function(){   var form = layui.form   ,layer = layui.layer   ,layedit = layui.layedit   ,laydate = layui.laydate;   //日期   laydate.render({     elem: '#date'   });   laydate.render({     elem: '#date1'   });   //创建一个编辑器   var editIndex = layedit.build('LAY_demo_editor');   //自定义验证规则   form.verify({     title: function(value){       if(value.length < 5){         return '标题至少得5个字符啊';       }     }     ,pass: [/(.+){6,12}$/, '密码必须6到12位']     ,content: function(value){       layedit.sync(editIndex);     }   });   //监听指定开关   form.on('switch(switchTest)', function(data){     layer.msg('开关checked:'+ (this.checked ? 'true' : 'false'), {       offset: '6px'     });     layer.tips('温馨提示:请注意开关状态的文字可以随意定义,而不仅仅是ON|OFF', data.othis)   });   //监听提交   form.on('submit(demo1)', function(data){     layer.alert(JSON.stringify(data.field), {       title: '最终的提交信息'     })     return false;   }); }); 下面我们按照官方文档的开发规范使用一下form表单的例子       表单集合演示           单行输入框                       验证必填项                             验证手机                                   验证邮箱                                       多规则验证                                   验证日期                                   验证链接                                 验证身份证                       自定义验证                   请填写6到12位密码               范围                           -                                 单行选择框                   </opt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值