gpt4 book ai didi

javascript - 使用内联参数触发 javascript 事件

转载 作者:行者123 更新时间:2023-11-30 16:54:34 24 4
gpt4 key购买 nike

我的网站上有一个通过单击链接提交的表单。我正在尝试创建一个自定义上下文菜单,以便用户可以根据需要在新选项卡中打开提交的表单。因为页面是用cgi动态生成的,每次函数的参数都不一样。我想在将属性 target="_blank" 添加到表单元素后使用这些参数触发函数。

我可以使用 document.getElementById("...").onclick 访问参数,然后使用正则表达式提取它们。但这似乎过于复杂。我觉得必须有一种方法可以说,实际上,“做如果有人左键单击这个元素你会做的事情”。这是一些简化的代码:

<a id = "link" style = "cursor:pointer" onclick = "postform('1')">link</a>
<FORM id = "remote"><input id = "input" type = "hidden" name = "firstkey" value = ""></FORM>

我将 JS 放在一个单独的文件中,它基本上说:

function postform(valueone) {
document.getElementById("input").value = valueone;
document.getElementById("remote").submit();
}

我现在在新标签页中打开的是:

function contextmenu() {
var parameters =document.getElementById("newtab").onclick;
//regexes go here
postform(parameters);
}

我想问的是,有没有一种方法可以在一两行中替换我在 contextmenu 函数中所做的事情,这将触发附加到链接的 onclick 事件及其参数?

最佳答案

您可以使用节点的点击方法以编程方式触发节点的点击事件。

所以对于 id 'newtab' 的元素:

document.getElementById("newtab").click();

*注意:将其包裹在一些错误检查中,以防由于某种原因找不到节点。

关于javascript - 使用内联参数触发 javascript 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29930741/

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