通过单击JSP和javascript加载两个返回函数

通过单击JSP和javascript加载两个返回函数,java,javascript,jsp,Java,Javascript,Jsp,有一个jsp文件调用2个不同的js文件。我在jsp中有一个ButtonSume ButtonA,当单击它时,它会加载一个Function1,它用值填充jsp表单。页面ButtonB中还有另一个按钮,单击该按钮可加载另一个函数,其中该函数Function2根据Function1在表单中填充的结果计算一个数字。因此,操作是用户首先单击按钮A,加载字段值,然后单击按钮B以获得计算的数字。现在我不希望在这里单击两个按钮。我尝试将两个函数放在一个按钮中,如下例所示 <td colspan=3>

有一个jsp文件调用2个不同的js文件。我在jsp中有一个ButtonSume ButtonA,当单击它时,它会加载一个Function1,它用值填充jsp表单。页面ButtonB中还有另一个按钮,单击该按钮可加载另一个函数,其中该函数Function2根据Function1在表单中填充的结果计算一个数字。因此,操作是用户首先单击按钮A,加载字段值,然后单击按钮B以获得计算的数字。现在我不希望在这里单击两个按钮。我尝试将两个函数放在一个按钮中,如下例所示

<td colspan=3><center><INPUT TYPE="Button"  VALUE="Query Package Info" TARGET="bottom" onClick="generateReport('MK07FormPackageInfo'); computeMarkFormat(document.MK07Form.markSurf.value);"></td>
但它只正确地运行第一个,而第二个则给出空值。
请帮助。

为什么没有Javascript函数1只需调用函数2

如果其他JSP使用函数1和2: 函数1可以重载或修改为接受表示是否调用函数2的参数。其他JSP仍然可以按原样调用Function1。此特定按钮可以调用带有参数的Function1进行触发 函数2调用

 function1 (callFunction2) {
   function1();
   function2();
 }
 function1 (){
 }

 function2 () {
 }
还有其他原因需要这是两个不同的电话吗

谢谢,
Paul

我试图执行您的场景,它实际上正在运行

这是我的密码

<script language="javascript">
function loadValues(){
document.getElementById('a').value = '2';
document.getElementById('b').value = '2';
}

function calc(){
document.getElementById('c').value = document.getElementById('a').value + document.getElementById('b').value;
}
</script>
HTML


唯一失败的地方是,如果第一个方法成功执行,那么只执行第二个函数。如果您在第一个函数中有任何异常或问题,第二个函数将不起作用,您可以尝试使用“b1”而不是“b”,然后将不执行任何操作。如果有什么不对劲,请纠正我。谢谢..

你为什么不给我一个贴身标签呢

如果结果不是您期望的结果,您可能需要调试或添加console.log来调试第二个函数,因为您说它返回空val,这意味着它实际上被调用了,对吗?。另外,尝试打开浏览器开发工具上的控制台,查看是否存在任何异常/错误

顺便说一句,就像其他人说的: onClick=generateReport'MK07FormPackageInfo';computeMarkFormatdocument.MK07Form.markSurf.value

不是很漂亮,也不是推荐的方法。。。 您可能希望使用jQuery将多个事件侦听器添加到

jQuery'queryPackageInfoBtn'。单击函数{generateReport'MK07FormPackageInfo';}; jQuery'queryPackageInfoBtn'。单击函数{computeMarkFormatdocument.MK07Form.markSurf.value;};
因为这两个函数都是全局javascript函数,也被其他jsp共享。这两个函数都是不同的.js文件,并且有各自不同的特定角色。实际上,我不想以这种方式混淆它们的功能。
<input type="text" id="a"/>
<input type="text" id="b"/>
<input type="text" id="c"/>
<input type="button" onClick="loadValues(); calc();" />