美文网首页
required属性和autofocus属性,labels属性

required属性和autofocus属性,labels属性

作者: 靓亮 | 来源:发表于2016-11-15 15:11 被阅读0次

required属性:在提交时,如果元素中内容为空白,则不允许提交,同时在浏览器中会弹出提示文字。

autofocus属性:当页面打开时,该控件自动获得光标焦点

required属性和autofocus属性的代码如下:

<!DOCTYPE html>
<head>
<title>required属性和autofocus属性 的使用示例</title>
<meta charset="UTF-8">
</head>

<form action="demo_form.asp" method="get">
  Name: <input type="text" name="usr_name" required="required" autofocus />
  <!--autofocus:当页面打开时,该控件自动获得光标焦点  -->
  <input type="submit" />
  <!-- 提交按钮 -->
  <input type="reset" />
  <!-- 重置按钮 -->
</form>
</form>

运行如图:

Paste_Image.png

当不输入内容,点击按钮就会出现下图:

Paste_Image.png

labels属性:为所有可用标签(label元素)的表单元素定义一个label属性,属性值为一个NodeList对象,代表该元素所绑定的标签元素所构成的集合。

labels属性的使用方法:

<!DOCTYPE html>
<head>
<title>labels属性的使用示例</title>
<meta charset="UTF-8">
</head>
<script type="text/javascript">
function Validate(){
    var txtName=document.getElementById("txt_name");   //找到输入框 
    var button=document.getElementById("btnValidate");//找到按钮
    var form=document.getElementById("testform");//找到表单
    if(txtName.value.trim()==""){//判断输入框里有文字没,trim()就是空格的意思
        if(txtName.labels.length==1)//判断输入框里的索引是不是为1
            // 0是id=label 1是id="txt_namez
        //疑问:这里的索引和for绑定不太明白
        {
            var label=document.createElement("label");//是在对象中创建一个对象,
            label.setAttribute("for","txt_name");
            //输出:for="txt_name" 疑问:本来在label中就是for="txt_name"为什么还要写?
            //  setAttribute(string name(字符串名称), string value(字符串值)):增加一个指定名称和值的新属性,或者把一个现有的属性设定为指定的值。

            form.insertBefore(label,btnValidate); //btnValidate/txt_name/button
            //在节点的子节点列表任意位置插入新的节点。
            txtName.labels[1].innerHTML="请输入姓名";//插入引号里的内容
        //labels[1]指id="txt_name"
            txtName.labels[1].setAttribute(
            "style","font-size:20px; color:red");
            //输出:style{font-size:20px; color:red};
        }       
   }
   else if(txtName.labels.length>1)
       form.removeChild(txtName.labels[1]);//提交后删除输入框里的内容
   // removeChild() 方法指定元素的某个指定的子节点。
    // 以 Node 对象返回被删除的节点,如果节点不存在则返回 null。
}
</script>
<form  id="testform">
<label id="label" for="txt_name">姓名:</label>
 <input id="txt_name" autofocus><!--autofocus:当页面打开时,该控件自动获得光标焦点  -->
<input type="button" id="btnValidate" value="验证"  onclick="Validate()"/>
</form>

代码运行如图:

Paste_Image.png

不在输入框输入内容点击按钮就会出现下图:

Paste_Image.png

在这串代码中<label id="label" for="txt_name">姓名:</label>for 属性应该等于相关元素的 id 元素,以便将它们捆绑起来。

for的值有两个:
第一个:id ( 规定 label 绑定到哪个表单元素。)
第二个:formid (规定 label 字段所属的一个或多个表单。)

document.createElement()是在对象中创建一个对象,要与appendChild() 或 insertBefore()方法联合使用。
appendChild() 方法在节点的子节点列表末添加新的子节点。
insertBefore() 方法在节点的子节点列表任意位置插入新的节点。

innerHTML在JS是双向功能:

获取对象的内容 或 向对象插入内容;
如:
<div id="aa">这是内容</div> ,我们可以通过 document.getElementById('aa').innerHTML 来获取id为aa的对象的内嵌内容;
也可以对某对象插入内容,
如:
document.getElementById('abc').innerHTML='这是被插入的内容'; 这样就能向id为abc的对象插入内容。

相关文章

  • required属性和autofocus属性,labels属性

    required属性:在提交时,如果元素中内容为空白,则不允许提交,同时在浏览器中会弹出提示文字。 autofoc...

  • textarea

    属性 New:HTML5 中的新属性。 下面就单个属性进行讲解 autofocus 自动聚焦 required i...

  • HTML5属性

    表单属性 为input(text)、select、textarea、button元素增加autofocus属性,它...

  • vue+element 表单动态改变rules属性

    1.required(是否必填)修改el-form-item标签中的prop属性和required属性 2.修改单...

  • input中的属性

    placeholder:它的属性值为提示文本,但不占位 autofocus:自动获取焦点,没有属性值 autoco...

  • 原生表单部件

    通用属性:所有的表单元素都有一组通用的属性,他们对下面的组件都通用 1 .autofocus:这个属性允许当页面加...

  • input required属性

    如果使用该属性,则字段是必填(或必选)的。

  • input表中的required、readonly、disabl

    input中的 required、readonly、disabled等属性是boolean属性[参考],缺省(不写...

  • Chapter 5. Schema and Data Model

    每个janusgraph的图有自己的schema,由边labels、属性keys和顶点labels组成。一个gra...

  • 11标示线

    标示线 标示线简单案例 常见属性 常见属性详解 Labels标签,标示线对应的文字说明 dashSyle有各种值,...

网友评论

      本文标题:required属性和autofocus属性,labels属性

      本文链接:https://www.haomeiwen.com/subject/clzkpttx.html