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

当内部输入框获取焦点时内部文字消失

当内部输入框获取焦点时内部文字消失

qq_路人甲_52 2017-07-12 21:24:09
 <body><input type="text" value = "请输入员工号"onfocus='if(this.value==defaultValue){this.value=""}'onblur="    if(this.value==''){this.value=defaultValue}"/><script type="text/jscript"></script> </body></html>怎么把这个功能改成函数形式
查看完整描述

3 回答

?
千秋此意

TA贡献158条经验 获得超187个赞

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script>
        function focusHandler(el) {
            if (el.value === el.defaultValue) {
                el.value = '';
            }
        }

        function blurHandler(el) {
            if (el.value === '') {
                el.value = el.defaultValue;
            }
        }
    </script>
</head>
<body>
    <input type="text" value="请输入员工号" onfocus="focusHandler(this)" onblur="blurHandler(this)">
</body>
</html>


查看完整回答
2 反对 回复 2017-07-12
  • 错过了年华
    错过了年华
    <body> <input id="t" type="text" value = "请输入员工号" onfocus="none(t)" onblur="block(t)"/> </body> <script type="text/javascript"> function none(test) { var a=document.getElementById(test); if(a.value==a.defaultValue) {a.value=""} } function block(test) { var a=document.getElementById(test); if(a.value=='') {a.value=a.defaultValue} } </script> 请问这个哪里错了?
  • 千秋此意
    千秋此意
    你这里传的参数是 t ,你没有声明过t这个变量,在 js里可以功过id直接访问一个DOM节点(但是最好不要这样做),也就是说你这里传入的 t 和我上面传的 this 实际上是同一个东西,你在两个函数内部就不用再获取元素了,函数里的 test 实际上就是那个 input 节点
  • qq_路人甲_52
    qq_路人甲_52
    不对呀,报错呀
点击展开后面7
?
暴躁的代码

TA贡献7条经验 获得超10个赞

这个功能可以直接用html自带的属性placeholder="..."



查看完整回答
反对 回复 2017-07-14
  • qq_路人甲_52
    qq_路人甲_52
    这个知道、刚开始学JS、尝试着用它写、但是不知道为啥写的函数形式总出错
  • 3 回答
  • 1 关注
  • 1596 浏览
慕课专栏
更多

添加回答

举报

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