【javascript】onblur调用函数失效问题记录
在处理页面上一个失焦效果时遇到了 xxxx is not a function 这样的错误,但函数确实有定义成功 ,经过测试发现是 id 值与函数名一致导致的问题,但是产生的原因没有找到详细的解释 ,如果有了解的大佬希望可以在评论中留言告知。
具体测试代码如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> function test(){ alert("dsds"); } </script> </head> <body> <form action="" method="post" onsubmit="return false"> <input type="text" id="test" onblur="test()" /> </form> </body> </html>
此时触发失焦事件时会出现 test is not a function的错误
如果将 id=”test” 调整 id=”test_” 则此时可以正确调起函数,示例如下
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> function test(){ alert("dsds"); } </script> </head> <body> <form action="" method="post" onsubmit="return false"> <input type="text" id="test_" onblur="test()" /> </form> </body> </html>