通过在 IE11 中单击锚标记来提交表单

form submit by clicking on anchor tag in IE11

我正在尝试更新一些旧代码,这些代码可以在除 IE11 之外的所有 IE 版本上正常工作。单击锚标记时,javascript 函数为 运行。功能 。该函数所做的只是从 DOM 获取某些值,然后使用 post 操作提交表单。 我知道如果输入元素没有名称,IE11 提交将不起作用。在这里,提交是通过单击锚标记完成的 - 我尝试向锚标记添加名称和 ID,但它仍然无法正常工作。 关于如何让它工作的任何想法。以下是锚标签。

<a class="nohigh"  href="javascript:getClassDetails('<%=Id%>');">

以下是 javascript 函数:

function getClassDetails(a){
 var classId = document.getElementById(classIdRow ).value;
 var courseId = document.getElementById(courseIdRow).value;
 document.getElementById('val1').value = classId 
 document.getElementById('val2').value = courseId 
 document.getElementById('clasCourseForm').submit();
}

你想要的功能应该是:

function getClassDetails(a){
 var classId = document.getElementById(classIdRow).value; // assuming classIdRow is defined
 var courseId = document.getElementById(courseIdRow).value; // assuming courseIdRow is defined
 document.getElementById('val1').value = classId;
 document.getElementById('val2').value = courseId;
 document.getElementById('clasCourseForm').submit();
}

至少假设你上面的所有 JavaScript ^ 都是逐字记录的。

[编辑:删除了原始答案,因为问题已更改以更正语法]

此外,JS代码还有其他怪异之处,在于函数接受一个参数(a)但从不在函数内部使用它。几乎可以肯定其中涉及某种逻辑错误,您需要调查一下。

修复了它 - 通过向表单添加名称和 ID。