<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<form id="Searchid" name="Form1" onsubmit="return true;" action="Search.action" method="post">
<table width="100%" border="1">
<tr>
<td width="10%">1</td>
<td width="90%">
<form id="testform1"
method="post"
onsubmit="return false"
action="toSelect.action">
<input type="hidden" name="id" value="4" />
</form>
<a href="#" onclick="document.getElementById('testform1').submit();">
ID
</a>
</td>
</tr>
</table>
</form>
</body>
</html>
提示JS错误。
但是在修改成如下代码后就可以提交。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<form id="Searchid" name="Form1" onsubmit="return true;" action="Search.action" method="post">
<form id="1234" name="1234" onsubmit="return false;"
action="test.action" method="post">
</form>
<table width="100%" border="1">
<tr>
<td width="10%">1</td>
<td width="90%">
<form id="testform1"
method="post"
onsubmit="return false"
action="toSelect.action">
<input type="hidden" name="id" value="4" />
</form>
<a href="#" onclick="document.getElementById('testform1').submit();">
ID
</a>
</td>
</tr>
</table>
</form>
</body>
</html>
发现了没有。
加了一个
<form id="1234" name="1234" onsubmit="return false;"
action="test.action" method="post">
</form>
居然就好用了。
可是这是为什么呢?这个Form是没有用的。但是加了以后为什么。下面的那个Form就可以提交了。不出现JS错误了.
网上看到一篇文章:
document.getElementById("")为空或不是对象解决办法
网页设计中经常会使用此方法,当出现这个错误的时候,不妨使用alert();来调试调试。
alert(document.getElementById("name"));
看看是否有弹出框:
1,若无弹出框,则说明不存在该ID=name。
2,若有弹出框,则说明存在该ID=name,那么就可能是因为改脚本语言所处在网页文本位置在ID=name标签上部,把脚本写到该HTML标签下面试验。即可得到该对象值。
但是好像还是说明不了上面的情况。

分享到:
相关推荐
今天看qunit源代码,发现一段很奇怪的代码,虽然能领会他的意思,但是不明白双感叹号起到的作用。 代码如下:function id( name ) { return !!( typeof document !== “undefined” && document && document....
看代码: 代码如下: var dom=document.getElementById(“test”),clickt=0; dom.addEventListener(“click”,function(e){ clickt++; alert(‘你摸了我’+clickt+’下了。最多摸2下哦’); if(clickt>=2){ ...
在JavaScript中,变量的相互引用主要涉及到值的存储方式以及数据类型的...在处理这些类型时,我们需要谨慎操作,确保我们明确知道何时在改变一个变量时会影响到另一个变量,以及如何正确地管理DOM节点,防止内存泄漏。
本文将详细探讨这个问题,并提出解决方案。 首先,`maxlength`属性的基本用法是在`<textarea>`标签中设置,例如`<textarea maxlength="600">`,这会限制用户输入的字符数不超过600个。通常情况下,当用户输入达到...
SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。 [编辑本段]SWFUpload的主要特点 * 可以...
1. **创建Canvas元素**:在HTML中,通过`<canvas>`标签创建一个画布,然后通过JavaScript获取它的2D渲染上下文,`var canvas = document.getElementById('myCanvas'); var ctx = canvas.getContext('2d');` 2. **...
这个函数接受一个id参数,并使用document.getElementById方法获取元素。 5. 为了处理不同浏览器之间的差异,定义了一个变量isIE来标识当前浏览器是否为IE系列。 6. 为了记录窗口和鼠标的位置信息,创建了一个名为pos...
在ASP.NET Web应用程序开发过程中,一个常见的问题是当用户刷新页面时,可能会导致某些服务器端事件被重复触发。例如,在一个注册页面中,用户完成注册并提交表单后,如果他们刷新页面(通常通过按下F5键),这将...
除此之外,你还可以直接传递一个结点,比如现在我们修改一下代码:`el: document.getElementById('root')`这样也是可以的,你可以试试。 2. render: `(createElement: () => VNode) => VNode`,上面的是 ES6 的箭头...