首页 > 代码库 > js方法的命名不能使用表单元素的名称或ID

js方法的命名不能使用表单元素的名称或ID

今天在写页面的时候,遇到一个关于js方法的命名问题,先看下代码:

表单元素如下:

<select name="isCulture" onchange="isCulture(this)">
    <option value="" selected="selected">全部</option>
    <option value="01" selected="selected"></option>
    <option value="00" selected="selected"></option>
</select>

js方法如下:

function isCulture(obj) {
    alert(123);
}

但是当页面执行onchange事件时,Firebug控制台报出异常:TypeError: isCulture is not a function

起初很是纳闷,怀疑语法有问题,可实在看不出问题,于是就随便换了一个方法名,奇怪的是就可以正常执行。

接着我就百度了一下,得出的结果是js的方法名不能是表单元素的name或ID,以及html的保留字,比如:submit、action、reset等。