我正在制作这个有Ajax的表单,我想在客户端使用javascript进行验证。但是,当我将id name和onblur fnc名称相同时,我遇到了一个问题:
<label>Title*:</label>
<?php
echo '<input type="text" id="title1" value = "" onblur="title1(this.value)"/> <span id="err1"> </span> <p></p>';
?>
基本上Ajax不起作用,因为我的fnc名称与id名称相同。我只是想知道为什么它会引起歧义,因为onblur和id需要diff参数。
答案 0 :(得分:1)
某些浏览器会自动使ID为ID的元素成为全局window
对象的属性。为了避免这种情况,明确声明它们非常重要。试试这个:
var title1 = function(val) {
// function body
}
这基本上会强制浏览器将title1
保留为变量,而不是对元素的引用。