实例说明为什么不要行内使用javascript

 更新时间:2014年04月18日 11:33:35   作者:  
不要行内写js是因为这样很不安全,因为用火狐的firebug可以轻松让代码失效,下面告诉大家为什么
很多人都曾经这么使用Javascript
复制代码 代码如下:

<a href="#" onclick="al()">保存</a>

上面的代码,很方便使用,所有浏览器都支持

虽然我很早就看过一些书,说html,css,js分开来,比较容易维护,但是我贪图方面,还是经常这么写,不过我今天用火狐调试的时候发现,还是不要行内写了,因为这样很不安全,因为用火狐的firebug可以轻松让代码失效!

下面看一下为什么:
复制代码 代码如下:

<html>
<head>
<script>
function al()
{
alert("good");
}
</script>
</head>
<body>
<a href="#" onclick="al()">保存</a>
</body>
</html>

上面的代码是点击标签弹出对话框

效果如图:
 

但是如果我在火狐里面找到a标签并把里面的js代码去掉的话,在单击a标签就不会弹出对话框了,如下图
 

所以假如你这个单击事件是判断用户输入数据是否合法的话,那么就无法判断了

本人是做asp.net的,今天就发现这个问题,因为asp.net服务器控件,有两个单击事件,一个前台一个后台的,我用前台的单击事件判断用户的输入数据,合法的话调用后台事件,结果用火狐调试,就发现了上面介绍的现象,即使数据不合法也直接调用后台方法了,也许我这个不是什么技术,不过我为自己发现这个问题而高兴,特此发文章分享一下,哈哈

解决方法:

给a标签个id ,如下面就可以了
复制代码 代码如下:

<a id="a1" href="#">保存</a>
<script>
document.getElementById("a1").onclick=function(){}
</script>

相关文章

  • js通过location.search来获取页面传来的参数

    js通过location.search来获取页面传来的参数

    js获取通过window.location.search来获取页面传来的参数,经测试可用,大家可以学习下
    2014-09-09
  • js中各种类型的变量在if条件中是true还是false

    js中各种类型的变量在if条件中是true还是false

    变量在if条件中到底是true还是false,还是比较让人迷糊,下面来进行测试,测试常见的变量类型在if条件中的表现
    2014-07-07
  • axios实现简单文件上传功能

    axios实现简单文件上传功能

    这篇文章主要为大家详细介绍了axios实现简单文件上传功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • 跟我学习JScript的Bug与内存管理

    跟我学习JScript的Bug与内存管理

    跟我学习JScript的Bug与内存管理,小编对JScript的Bug与内存管理也不甚了解,所以整理了本篇文章,希望可以解决大家学习时的困扰。
    2015-11-11
  • 小程序点击图片实现png转jpg

    小程序点击图片实现png转jpg

    这篇文章主要介绍了小程序点击图片实现png转jpg,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • JS验证全角与半角及相互转化的介绍

    JS验证全角与半角及相互转化的介绍

    全角:是一种电脑字符,是指一个全角字符占用两个标准字符(或两个半角字符)的位置。全角占两个字节。半角:是指一个字符占用一个标准的字符位置。半角占一个字节。接下来通过本文给大家介绍JS验证全角与半角及相互转化的知识,需要的朋友参考下吧
    2017-05-05
  • layui实现图片虚拟路径上传,预览和删除的例子

    layui实现图片虚拟路径上传,预览和删除的例子

    今天小编就为大家分享一篇layui实现图片虚拟路径上传,预览和删除的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • javascript将扁平的数据转为树形结构的高效率算法

    javascript将扁平的数据转为树形结构的高效率算法

    这篇文章主要介绍了javascript将扁平的数据转为树形结构的高效率算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • js判断浏览器是否支持严格模式的方法

    js判断浏览器是否支持严格模式的方法

    除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict mode)。顾名思义,这种模式使得Javascript在更严格的条件下运行。这篇文章给大家详细介绍了js判断浏览器是否支持严格模式的方法,有需要的朋友们可以参考借鉴。
    2016-10-10
  • layui富文本编辑器前端无法取值的解决方法

    layui富文本编辑器前端无法取值的解决方法

    今天小编就为大家分享一篇layui富文本编辑器前端无法取值的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09

最新评论