按钮的html

 <!-- 学校 -->
<div class="layui-inline">
<label class="layui-form-label">
<button type="button" class="layui-btn layui-btn-primary layui-btn-xs" onclick="yun.popOpen('/out/school/crmAddSchool', '添加学校信息','690','400')" title="#(i18n.get('新增学校'))">
<i class="layui-icon"></i>
</button>
#(i18n.get('学校'))
</label>
<div class="layui-input-inline">
<select id="school" name="personStudent.schoolId" onchange="yun.casSel(this,'/out/school/casSelName','grade')" lay-verify="" >
<option ></option>
#for(school : schools )
<option value="#(school.id)">#(school.schoolName)</option>
#end
</select>
</div>
</div>

问题:项目中出现的问题,学校前边有一个按钮是使用label包裹了button,给button添加了点击事件,每次点击的时候label总是会触发button的点击事件?

答案: 这个主要是label的绑定元素的问题,包裹元素即绑定了某个元素,那么给这个元素设置事件的时候等同于label也会会有事件了,这样点击button会触发事件,点击label也会触发事件。

想要的结果:这里的样式就是需要这样的,不可以改变。但是点击button触发事件,点击label不触发事件。

解决办法:这里主要是用到了layui的样式,所以只需要把label改成其他的标签就可以了,他的class保留,这样样式就保留下来了。

 <!-- 学校 -->

 <div class="layui-form-label">
<button type="button" class="layui-btn layui-btn-primary layui-btn-xs" onclick="yun.popOpen('/out/school/crmAddSchool', '添加学校信息','690','400')" title="#(i18n.get('新增学校'))">
<i class="layui-icon"></i>
</button>
#(i18n.get('学校'))
</div>

这样就可以实现了。

这里介绍了官方的示例:

w3c示例

显式绑定
<form>
<label for="male">Male</label>
<input type="radio" name="sex" id="male" />
<br />
<label for="female">Female</label>
<input type="radio" name="sex" id="female" />
</form>

提示和注释

注释:可以通过使用 "for" 属性将 label 绑定到另一个元素,或者直接在 label 元素内部放置元素。

使用for为lable关联指定的元素上,这样点击label的时候就等于是点击了绑定的元素。

这种使用for标签的方式是显示的方式

隐式的方式是把需要绑定的标签放到label内部,让label包裹上这个需要绑定的元素

隐式绑定
<!DOCTYPE HTML>
<html>
<body> <form>
<label>Male<input type="radio" name="sex" /></label>
<br />
<label>Female <input type="radio" name="sex" /></label>
</form> </body>
</html>

这样不使用for就可以绑定。

label标签的显示和隐式关联问题的更多相关文章

  1. Intent 显示意图 隐式意图

    //显式意图  :必须指定要激活的组件的完整包名和类名 (应用程序之间耦合在一起) // 一般激活自己应用的组件的时候 采用显示意图  //隐式意图: 只需要指定要动作和数据就可以 ( 好处应用程序之 ...

  2. Android中显示和隐式Intent的使用

    显示启动activity                                                                                         ...

  3. Android中Intent的显示和隐式使用

    Android应用程序中组件之间的通信都少不了Intent的使用,Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件, ...

  4. C#接口的显示和隐式实现

    早上骑车上班走到半路发现手机忘带了,这年代兜里没装一分现金,吃饭都要刷手机,上班时间无聊了不能玩手机更是大问题,所以果断掉头拿手机.取完手机刚出门看这天阴沉沉的貌似要下雨,没雨衣,骑车又不能打伞,上次 ...

  5. C# 转换符的重载 显示、隐式转换

    class Complex { //保存转换的值 Int32 v; public Complex(Int32 x) { v = x; } public Int32 ToInt32() { return ...

  6. 2017-3-2 C# WindowsForm 中label标签居中显示

    有时候label标签要输出 label.text=""; 的语句,那么要把这个语句居中显示 1.要取消他的Autosize的值 2.拉大这个框,设置里面的文本的TextAlign ...

  7. angularJS1笔记-(7)-控制器的合理使用(显示和隐式的依赖注入)

    AngularJS依赖注入 1.隐式注入:不需要开发人员干预,angularJS自动根据参数的名称识别和注入数据 app.controller("myCtrl".function( ...

  8. 【Selenium】显示、隐式等待

    显示等待 WebDriverWait 超时抛出TimeOutException,默认500毫秒 public class WaitToReturnElement { /* * 设置超时时间为5秒,返回 ...

  9. interface Part3(实现:显示和隐式)

    1. 接口的实现实际上和类之间的继承是一样的,也是重写了接口中的方法,让其有了具体的实现内容. 2. 但需要注意的是,在类中实现一个接口时必须将接口中的所有成员都实现,否则该类必须声明为抽象类,并将接 ...

随机推荐

  1. JSR303 分組数据验证的使用

    场景:一个Bean ,需要在不同情况下分别做验证 1.依赖:springboot 已经集成 2.定义一个bean (验证对象) import javax.validation.constraints. ...

  2. nginx 配置文件配置

    server { listen 80 ; server_name test.com www.test.com; index index.html index.php index.htm; root / ...

  3. php 中文转拼音,可以只转首字母,可以设置utf8、gbk

    <?php class Pinyin { /** * 默认是gb编码,第二个参数随意设置即为utf8编 * @param type $isInitial 是否只返回首字母 * @return t ...

  4. Python_01 执行方式、解释器路径、编码、变量、条件语句

    1.第一句python --文件后缀名可以是任意? --导入模块时,如果不是.py会报错 ==>文件后缀名是.py 2.两种执行方式 python解释器 py文件路径 python 进入解释器: ...

  5. 模板引擎Dot

    Dot.js 很轻,处理速度也快,作为将json数据赋值到html页面的最好帮手. html5新引入的<template></template>就不用原先的<script ...

  6. Oracle 学习总结 - 问题诊断

    搜集常用诊断sql https://blog.csdn.net/yangshangwei/article/details/52449489 lock相关: 1. 查看lock, 打开两个事物,事物1更 ...

  7. js 滑动门的实现

    原理:滑动门,这里以图片进行实例,首先设定主盒子div的宽度和高度设定,并进行图片初始化位置的设定,然后将图片绑定事件,并设定要达到的效果 html代码: <!DOCTYPE html> ...

  8. 为什么java实体类需要重写toString方法

    如果没重写toString的情况: Object 类的 toString 方法 返回一个字符串,该字符串由类名(对象是该类的一个实例).at 标记符“@”和此对象哈希码的无符号十六进制表示组成.换句话 ...

  9. linux 再多的running也挡不住锁

    再续<linux 3.10 一次softlock排查>,看运行态进程数量之多: crash> mach MACHINE TYPE: x86_64 MEMORY SIZE: GB CP ...

  10. Haskell语言学习笔记(90)Default

    安装 data-default-class $ cabal install data-default-class Installed data-default-class-0.1.2.0 Prelud ...