我在ASP网页外面建了一个JS文件夹专门存放JS代码
结果在页面里面这样写:
<script type="text/javascript" src="../JS/form.js">
其中FORM标签这么写:<form method="post" name="news_alter" id="news_alter" action="newsalter_exe.asp" onSubmit="ifsubmit()">
TABLE这么写:_<table width="100" border="0" align="center" cellpadding="0" cellspacing="0" onclick="showtable(2)" class="table" id="table1"  style="CURSOR: hand ">
按照道理 应该点击就能触发事件的
JS文件是这么写的
function ifsubmit()//表单提交方法
{
alert("进来了")
var a=document.getelementsbytagname("input");
var ifsub=true;
for(int i=0;i<a.count;i++)
{
if(a[i].value="")
{
alert("请将表单填写完全")
ifsub=false
break;
}
}
if(ifsub)
{
this.submit();
}
}
这个写在页面内都不能执行 我想这个写的肯定有问题 但那时不知道问题在哪里这是第二个方法
function showtable(tableid)
{
whichtable=eval("table"+tableid);
if(whichtable.style.display=="none")
{
eval("table"+tableid+".style.display=\"\";");
}
else
{
eval("table"+tableid+".style.display=\"none\";");
}
}
这个写到页面里面就可以执行  想不通这是为什么 请各位前辈们指教一下

解决方案 »

  1.   

    onsubmit事件是需要form表单里的<input type="submit" value="Submit" />激活提交的。你点的哪里?
      

  2.   

    我用IE8的工具查了一下 上面给我的报错信息是 当点击是showtable(2)缺少对象 
    这是怎么搞的?
      

  3.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      <META NAME="Generator" CONTENT="EditPlus">
      <META NAME="Author" CONTENT="">
      <META NAME="Keywords" CONTENT="">
      <META NAME="Description" CONTENT="">
     </HEAD>
     <script type="text/javascript" src="asd.js"></script> 
     <BODY>
      <table width="100" border="1" align="center" cellpadding="0" cellspacing="0" onclick="showtable(2)" class="table" id="table2"  style="CURSOR: hand "> <tr><td>12123</td><td>12123</td></tr>
      <tr><td>12123</td><td>12123</td></tr>
      <tr><td>12123</td><td>12123</td></tr>
      <tr><td>12123</td><td>12123</td></tr>
      </table>
     </BODY>
    </HTML>
    按照你的方法试了下,是OK的。你2个地方写的不对,JS引用那里没加</script>,不知道你实际中添加没有,还有就是你调用的showtable(2),但是你table 的 id="table1",不知道是不是你写错了,最后检查你JS的路径。其他没有了,谢谢
      

  4.   

    我知道是怎么搞的了  是我的整个调用的JS文件里面有错误的代码段 在这个SHOWTABLE前面 所以自动放弃执行后面的代码 这样的话 我的调用就没有效果 谢谢各位给我的意见