!form 表单中无法调用js代码而form外可以调用
求助!form 表单中无法调用js代码而form外可以调用
做了一个页面:当文本框中的字符超过一个的时候,修改span标签中的内容
代码如下:
<body>
<form>
<span id="n">请输入</span>
<input type="text" id="p" onBlur="p()"/>
</form>
<script language="javascript">
function p(){
var c = document.getElementById("p").value.length;
if(c > 1) {
document.getElementById("n").innerHTML=" 长度大于1";
}
}
</script>
</body>
将<input type="text" id="p" onBlur="p()"/>放在form标签外,功能正常,放在form标签内就不能正常使用。
HTML和JS之前都是自学的,没遇到过这种问题,应该怎么解决啊?求助求助!万分感谢
------解决思路----------------------
把方法名改一下,或者input的id改一下吧
在form中的元素,其id会覆盖其他全局同名函数,实际访问的p是这个元素,而不是你要的方法。
这个问题有点奇怪,以前也一直没注意。
------解决思路----------------------
<form>
<span id="n">请输入</span>
<input type="text" id="p" onblur="pv()"/>
</form>
<script>
function pv(){
var c = document.getElementById("p").value.length;
if(c > 1) {
document.getElementById("n").innerHTML=" 长度大于1";
}
}
</script>
做了一个页面:当文本框中的字符超过一个的时候,修改span标签中的内容
代码如下:
<body>
<form>
<span id="n">请输入</span>
<input type="text" id="p" onBlur="p()"/>
</form>
<script language="javascript">
function p(){
var c = document.getElementById("p").value.length;
if(c > 1) {
document.getElementById("n").innerHTML=" 长度大于1";
}
}
</script>
</body>
将<input type="text" id="p" onBlur="p()"/>放在form标签外,功能正常,放在form标签内就不能正常使用。
HTML和JS之前都是自学的,没遇到过这种问题,应该怎么解决啊?求助求助!万分感谢
------解决思路----------------------
把方法名改一下,或者input的id改一下吧
在form中的元素,其id会覆盖其他全局同名函数,实际访问的p是这个元素,而不是你要的方法。
这个问题有点奇怪,以前也一直没注意。
------解决思路----------------------
<form>
<span id="n">请输入</span>
<input type="text" id="p" onblur="pv()"/>
</form>
<script>
function pv(){
var c = document.getElementById("p").value.length;
if(c > 1) {
document.getElementById("n").innerHTML=" 长度大于1";
}
}
</script>