为了账号安全,请及时绑定邮箱和手机立即绑定

HTML5表单form属性?

HTML5表单form属性?

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <form id="fr"></form> <label for="text_name" form="fr">labels属性:</label> <input type="text" id="text_name" form="fr" /> <input type="button" id="butt" value="验证" form="fr" onclick="labelsyz()"/> <script> function labelsyz(){ var textt = document.getElementById("text_name"); var but = document.getElementById("butt"); var frr = document.getElementById("fr"); if(textt.value == ""){ var tet = document.createElement("label"); tet.setAttribute("for","text_name"); frr.insertBefore(tet,but); textt.labels[1].innerHTML="请输入姓名"; textt.labels[1].style.color="red"; } } </script> </body> </html>如上代码所示,我将表单元素放在form表单外面了,但是用了form=“”属性指定了从属关系,但是表单元素里的Onclick点击事件无法用,如果写到<form></form>内就可以用了,请问这是为什么呢?
查看完整描述

3 回答

已采纳
?
慕侠8885196

TA贡献5条经验 获得超3个赞

已改:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="UTF-8">

        <title></title>

    </head>

    <body>

        <form id="fr"></form>

         

        <label for="text_name" form="fr">labels属性:</label>

        <input type="text" id="text_name" form="fr" />

        <input type="button" id="butt" value="验证" form="fr" onclick="labelsyz()"/>

         

        <script>

        function labelsyz(){

            var textt = document.getElementById("text_name");

            var but = document.getElementById("butt");

            var frr = document.getElementById("fr");

            if(textt.value == ""){

                var tet = document.createElement("label");

                tet.setAttribute("for","text_name");

                frr.insertBefore(tet,frr.but);

                textt.labels[1].innerHTML="请输入姓名";

                textt.labels[1].style.color="red";

            }

        }

        </script>

    </body>

</html>


查看完整回答
反对 回复 2016-11-16
?
蜂之谷

TA贡献564条经验 获得超863个赞

肯定可以响应点击事件的,只是你放到外面就不能那么写了 frr.insertBefore(tet,but);  这里会报错的

查看完整回答
反对 回复 2016-11-16
?
田心枫

TA贡献1064条经验 获得超383个赞

 Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node.

查看完整回答
反对 回复 2016-11-16
  • 3 回答
  • 0 关注
  • 1395 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信