Javascript 当我只单击一个div时,如何使按钮被单击

Javascript 当我只单击一个div时,如何使按钮被单击,javascript,jquery,html,onclick,dropdown,Javascript,Jquery,Html,Onclick,Dropdown,我想让隐藏按钮成为有人单击div“mydiv”时单击的按钮。你不需要隐藏按钮。只需使用js将一个click侦听器分配给div本身,如下所示: <div id="mydiv"><div> <button style="visibility:hidden; float:left"></button> <div id="mydiv" onclick="document.getElementById('btn').click()"&

我想让隐藏按钮成为有人单击div“mydiv”时单击的按钮。

你不需要隐藏按钮。只需使用js将一个click侦听器分配给div本身,如下所示:

    <div id="mydiv"><div>
    <button style="visibility:hidden; float:left"></button>
<div id="mydiv" onclick="document.getElementById('btn').click()">click on me<div>
    <button id="btn" style="display:none;" ></button>
如前所述,这不需要按钮。但是,如果您想以任何方式使用按钮,只需为您的div分配一个模拟单击按钮的
eventListener

const btn = document.getElementById('mydiv');

function doSomething(){
    //run your script here when div is clicked
}

btn.addEventListener('click', doSomething);
示例

(我添加了一些CSS规则和一个额外的可视化功能。)

document.querySelector(“#mydiv”).addEventListener('click',()=>{//侦听对div的单击
document.querySelector('button')。click();//模拟单击按钮
});
函数test(){//单击按钮时调用此函数
log(“单击!”);
}

捕捉点击事件并不需要隐藏按钮。但如果你真的需要它:

document.querySelector('#mydiv').addEventListener('click', () => {
    document.querySelector('button').click();
});
点击我

使用jQuery,您可以执行以下操作:

    <div id="mydiv"><div>
    <button style="visibility:hidden; float:left"></button>
<div id="mydiv" onclick="document.getElementById('btn').click()">click on me<div>
    <button id="btn" style="display:none;" ></button>

注意,这里有一个额外的引号:
style=“可见性:隐藏;”float:left;“
应该是
style=“可见性:隐藏;浮动:左;“
。您甚至标记了
[onclick]
为什么不使用它?@Syscall是的,它只是一个mistake@Luca是的,我标记onclick是因为我的代码需要一个js函数来让div在上面可点击onclick@HassanElkhalifte我很高兴我的回答是有帮助的。请考虑把它标记为可接受的答案,这样,将来用户如果遇到同样的问题,就更容易找到解决方案。