热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【连载】研究EasyUI系统—LinkButton组件

linkbutton是easyui框架中的按钮组件,也是其他诸如MenuButton等各种形式按钮组件的父组件。linkbutton基于html中<a>标签创建,用户可以在按钮中

  linkbutton是easyui框架中的按钮组件,也是其他诸如MenuButton等各种形式按钮组件的父组件。linkbutton基于html中标签创建,用户可以在按钮中添加图标和文字,是一种很常用的组件。
linkbutton效果图
  上图中的“取消”和“登陆”按钮就是linkbutton。来看一下具体代码。
  
  linkbuttonDemo.php

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" type="text/css" href="easyui/themes/bootstrap/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>
        <title>linkbuttonDemotitle>
        <style> .container { text-align: center; width: 100%; } .inputContainer { width:400px; margin: auto; margin-top: 20px; } .inputLabel { font-size: 13px; padding-right: 10px; font-weight: bold; } .inputButton { margin-top: 40px; } style>
    head>
    <body>
        <div class="easyui-window" id="winButton">
            <div class="container">
                <div class="inputContainer">
                    <label class="inputLabel">请输入账号label>
                    <input class="easyui-textbox" data-options="height:28,width:240">
                div>
                <div class="inputContainer">
                    <label class="inputLabel">请输入密码label>
                    <input class="easyui-textbox" type="password" data-options="height:28,width:240">
                div>
                <a id="btnCancel" class="easyui-linkbutton inputButton" href="Javascript:void(0)">a>
                <a id="btnLogin" class="easyui-linkbutton inputButton" href="Javascript:void(0)" style="margin-left: 20px">a>
            div>
        div>
        <script> $("#winButton").window({ title:'LinkButton示例', width:480, height:240, collapsible:false, minimizable:false, maximizable:false }); $("#btnCancel").linkbutton({ iconCls:'icon-cancel', width:80, height:30, text:'取消', onClick:function() { $('#winButton').window('close'); } }); $("#btnLogin").linkbutton({ iconCls:'icon-ok', width:80, height:30, text:'登陆' }); script>
    body>
html>

  上例代码我们只对“取消”按钮做了事件处理,点击“取消”按钮,隐藏整个对话框(window组件),但未对“登陆”按钮做任何处理,用户可以根据实际项目编写对应代码。
  
  linkbutton组件属性

属性名称 属性值类型 属性默认值 描述
width 数值 null 组件宽度。
height 数值 null 组件高度。
id 字符串 null 组件id。
disabled 布尔值 false 是否禁用组件。
toggle 布尔值 false 值为true时可设定按钮处于选中或未选中状态。
1.3.3及以上版本支持。
selected 布尔值 false 如值为true,用户可将按钮设为选中状态。
1.3.3及以上版本支持。
group 字符串 null 通过设置组名将按钮分组。
plain 布尔值 false 值为true时按钮外观无凸起效果。
text 字符串 按钮标题。
iconCls 字符串 null 按钮图标样式。
iconAlign 字符串 ‘left’ 按钮图标位置。
有’left’、’right’、’top’、’bottom’四个值。
1.3.2及以上版本支持。
size 字符串 ‘small’ 按钮大小。有’small’、’large’四个值。
1.3.6及以上版本支持。

  disabled属性决定是否禁用按钮,一旦按钮禁用,按钮就无法点击,相关的事件也无法触发。下图展示“登陆”按钮禁用时的状态。
linkbutton组件disabled属性效果图
  我们先看下面的效果图和一段代码,然后将toggle、selected、group三者结合起来讲述。
linkbutton组件group、toggle、selected属性效果图

  linkbuttonToggleDemo.php

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" type="text/css" href="easyui/themes/bootstrap/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>
        <title>linkbuttonToggleDemotitle>
    head>
    <body>
        <div class="container">
            <a id="btn1" class="easyui-linkbutton" href="Javascript:void(0)">a>
            <a id="btn2" class="easyui-linkbutton" href="Javascript:void(0)" style="margin-left: 20px">a>
            <a id="btn3" class="easyui-linkbutton" href="Javascript:void(0)" style="margin-left: 20px">a>
            <a id="btn4" class="easyui-linkbutton" href="Javascript:void(0)" style="margin-left: 20px">a>
        div>

        <script> $("#btn1").linkbutton({ iconCls:'icon-ok', width:80, height:30, text:'按钮1', toggle:true, group:'g1' }); $("#btn2").linkbutton({ iconCls:'icon-add', width:80, height:30, text:'按钮2', toggle:true, group:'g1' }); $("#btn3").linkbutton({ iconCls:'icon-save', width:80, height:30, text:'按钮3', toggle:true, group:'g1' }); $("#btn4").linkbutton({ iconCls:'icon-cancel', width:80, height:30, text:'按钮4', toggle:true, group:'g1' }); script>
    body>
html>

  linkbuttonToggleDemo.php是上图的具体实现代码。可以看到,按钮2处于”selected”状态(即按下状态),这就是”selected”属性的效果,按钮的”selected”属性设置为true时,该按钮即为按下状态。
  “toggle”属性的作用为是否允许按钮可以处于按下状态,如果为true,那么用户点击该按钮时,按钮就呈现按下状态,再点击一下,又恢复正常。
  “group”属性对按钮分组,组名可以根据需要任意取名,本例为”g1”,且四个按钮group属性值都一样,均为”g1”,表明四个按钮属于同一组。分组属性一般配合toggle属性使用,在同一分组内的多个按钮,同一时刻只允许一个按钮处于”selected”状态(即按下状态)。上图中按钮2处于按下状态,一旦点击其他按钮(如按钮1)后,按钮1处于按下状态,按钮2同时复原。
  plain指定外观是否为凸起。下图中左侧按钮plain属性为true,右侧为false。
linkbutton组件plain属性效果图
  text属性指定按钮文字,如“取消”、“登陆”。
  iconCls指定图标样式,本文代码中的图标样式均为easyui框架自带。为方便查看,我们会将系统自带的图标样式做一个整理,单独一文呈现。
  iconAlign指定图标位置,默认为”left”(左侧),本文效果图中按钮的图标均在左侧。除此之外,还可以是”right”、”top”、”bottom”(分别为右侧、顶部、底部)。
  size属性指定按钮大小,只有两个值”small”和”large”,效果如下。
linkbutton组件size属性效果图

  linkbutton组件方法

方法名称 参数 描述
options 返回所有属性。
resize param 调整按钮大小。1.4及以上版本支持。
disable 禁用按钮。
enable 启用按钮。
select 使按钮处于选中状态。1.3.3及以上版本支持。
unselect 取消按钮的选中状态。1.3.3及以上版本支持。

  resize方法参数是一个json对象,含宽度和高度,layout一文有介绍。
  (http://blog.csdn.net/redeg/article/details/65443712)
  其他方法很简单,不多做介绍。
  
  linkbutton组件事件

事件名称 参数 描述
onClick 点击按钮时触发。1.3.6及以上版本支持。

  该方法已在linkbuttonDemo.php中描述,此处不赘述。另外,用户也可直接使用标签中js原生的onclick事件,效果是一样的。


推荐阅读
  • 本文介绍了如何利用jQuery实现对网页上多个div元素的显示与隐藏控制,包括基本的toggle方法及更复杂的显示隐藏逻辑。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 深入理解:AJAX学习指南
    本文详细探讨了AJAX的基本概念、工作原理及其在现代Web开发中的应用,旨在为初学者提供全面的学习资料。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 本文详细介绍了如何利用 Bootstrap Table 实现数据展示与操作,包括数据加载、表格配置及前后端交互等关键步骤。 ... [详细]
  • CSS Border 属性:solid 边框的使用详解
    本文详细介绍了如何在CSS中使用solid边框属性,包括其基本语法、应用场景及高级技巧,适合初学者和进阶用户参考。 ... [详细]
  • 使用CSS实现鼠标悬停时图片或按钮的平滑放大效果
    通过CSS技术,当鼠标悬停在图片或按钮上时,可以实现元素平滑放大的视觉效果,并可自由调整动画的持续时间。本文将详细介绍如何利用CSS实现这一功能。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 本文详细介绍了在Windows系统中如何配置Nginx以实现高效的缓存加速功能,包括关键的配置文件设置和示例代码。 ... [详细]
  • 数据类型--char一、char1.1char占用2个字节char取值范围:【0~65535】char采用unicode编码方式char类型的字面量用单引号括起来char可以存储一 ... [详细]
  • 本文详细介绍了在Linux操作系统上安装和部署MySQL数据库的过程,包括必要的环境准备、安装步骤、配置优化及安全设置等内容。 ... [详细]
author-avatar
书友74972801
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有