Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何添加onBlur事件以保持原始状态?_Javascript_Onblur - Fatal编程技术网

Javascript 如何添加onBlur事件以保持原始状态?

Javascript 如何添加onBlur事件以保持原始状态?,javascript,onblur,Javascript,Onblur,我有一个基本如下的代码: <input type="text" value="" onfocus="myFunction(this);" onblur="alert('1');"> <script> function myFunction(obj) { obj.onblur = function() { alert("2"); }; } </script> function myFunction(obj) { v

我有一个基本如下的代码:

<input type="text" value="" onfocus="myFunction(this);" onblur="alert('1');">

<script>
  function myFunction(obj) {
    obj.onblur = function() {
      alert("2");
    };
  }
</script>
function myFunction(obj) {
    var newonblur = function() {
        alert("2");
    }, oldonblur = obj.onblur;
    obj.onblur = oldonblur ? function(e) {
        oldonblur(e);
        newonblur(e);
    } : newonblur;
}

函数myFunction(obj){
obj.onblur=函数(){
警报(“2”);
};
}
在为我的函数添加事件之后,如何运行原始onBlur事件

--编辑--
这就是我的功能:

如果你想依靠传统的事件注册,你可以这样做:

<input type="text" value="" onfocus="myFunction(this);" onblur="alert('1');">

<script>
  function myFunction(obj) {
    obj.onblur = function() {
      alert("2");
    };
  }
</script>
function myFunction(obj) {
    var newonblur = function() {
        alert("2");
    }, oldonblur = obj.onblur;
    obj.onblur = oldonblur ? function(e) {
        oldonblur(e);
        newonblur(e);
    } : newonblur;
}

但我不建议这样做。对
addEventListener
使用更现代的方法,并对此感到满意。如果您需要支持旧浏览器,请考虑使用像jQuery之类的框架。

为什么要添加另一个函数到<代码> Onbule事件?@ SuMangBaBATI,我正在创建一个用于掩蔽、格式化和验证的函数。验证是在onBlur事件上完成的。我只是做一个验证,看看这个值是否正确。但其他开发人员可能需要将字段中输入的值与其他值进行比较。我尝试使用您显示的函数,但它不起作用。两个警报均未调用。如何
addEventListener
方法,当onFocus事件调用函数时,它工作得不是很好。仅当我创建正则表达式以删除onFocus事件中的myFunction函数时。如果其他一切都失败了,我将采用它。谢谢你。J.LyopRADRA抱歉,我在编辑过程中分心了。现在检查一下。它的功能产生了与addEventListener相同的效果,因此产生了相同的“问题”。我将用正则表达式应用它,但我仍然愿意看看是否有人有更轻量级的解决方案。:)非常感谢。@JúlioPradera让我直截了当地说:您需要在输入字段模糊后验证输入,如果检查失败,则发出警报?如果是这样的话,您根本不需要一个
onfocus
事件侦听器:只需使用
onblur
执行检查即可。我使用onfocus事件启动所有事件。我的功能太大了。:)我使用onKeyDown、onPaste和onBlur。