我在表单提交中调用了js函数...除IE6外所有浏览器都正常工作

时间:2011-02-28 20:17:12

标签: javascript function forms submit

function createTemplate() {
   createformlayers(x, y,z);

   windowResizeRefresh() ;
}
Layers1.text(x,y,z)
{
  //some codes go here
}

function createformlayers(eid)
{
  var newdiv = document.createElement('div'); 
  newdiv.setAttribute("id",eid);
  newdiv.innerhtml ='<form action="javascript:Layers1.text('test',200,200)"></form>';
}

function windowResizeRefresh() {
  for (var n = 0; n < Layers.length; n++) {
    fid = 'form' + n;    
    document.getElementById(fid).submit();
  }
}

<body onload="createTemplate()">

2 个答案:

答案 0 :(得分:0)

您可以将IE配置为在遇到错误时向您显示警告。此警告可能会为您提供有关失败原因的线索。如果有多个错误,对话框上还有一个前一个按钮很有用,之前的按钮往往需要先解决。

如果您在同一台计算机上安装了Microsoft Office。您可以在Office安装程序(在“添加/删除程序”下)添加/删除共享/ misc工具以进行“脚本调试”。这是IE6最好的调试器。 (除非你已经拥有MS Visual Studio,我认为这是相同的,但我没有Visual Studio,所以我不知道该怎么做)。

使用此脚本调试器,您可以打开调试器并设置断点并逐步执行代码并检查正在进行的操作。您还可以直接从JavaScript错误启动调试器并检查变量/ DOM /调用堆栈等。

答案 1 :(得分:0)

卫生署!刚刚意识到,你正在使用动作属性,在IE6中,可能会被限制为512个字符(包括“javascript:”)!!!

为什么不坚持功能中的所有内容?并action="javascript:doAction(); void 0"或其他什么?