gpt4 book ai didi

javascript - 多个功能 onClick() 不工作

转载 作者:行者123 更新时间:2023-11-29 18:26:53 25 4
gpt4 key购买 nike

下面是我在一个按钮上用于多个 java 脚本的代码。但是当我禁用第二个时,只有任何一个在工作。请告诉我:如何更改我的代码以使其正常工作?

function invoke(but)  
{
if(but==0)
{
function move(){
document.getElementById('tgt1').value =
document.getElementById('Allocation').value;
document.getElementById('Allocation').value="";
document.getElementById("Send").disabled=true;

}document.myform.action="Alloc_Insert.do";
}
else if(but==1)
{
document.myform.action="";
}

else if(but==2){ document.myform.action="WL_Verif.do";}
else if(but==3){ document.myform.action="Add_Query.do";}
document.myform.submit();
}

html如下:

<input type="Submit" value="Allocate" id="Send" name="submit" onClick="invoke(0);move();"/><br/>  

最佳答案

将按钮的名称更改为“提交”以外的名称


解释发生了什么:

当您将名称属性“提交”分配给按钮(或任何其他表单元素)时,可以通过

访问该元素
document.myform.submit

但是还有一个表单的内置方法:submit(),你也可以使用

document.myform.submit

当您调用 document.myform.submit() 时会发生什么

我会把代码写得有点不一样,你会看到麻烦:

document.myform['submit']()

代码不是访问内置方法,而是首先指向表单元素,然后尝试执行该方法。但是表单元素不是方法,它最终会出错并且脚本的其余部分(包括对 move() 的调用)将不会执行。

与“重置”相同,您永远不应该使用表单元素的内置属性/方法的名称作为表单元素的名称。

关于javascript - 多个功能 onClick() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12138844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com