Dom onclick不起作用。无论何时提交,它都会自动执行所有onclick处理程序
代码如下: html+jsDom onclick不起作用。无论何时提交,它都会自动执行所有onclick处理程序,dom,javascript-events,Dom,Javascript Events,代码如下: html+js 函数chk(){ var buttonnode=document.createElement('input'); buttonnode.onClick=ddiv(buttonnode); } buttonnode.onclick自动调用ddiv函数,但我希望它等待单击以继续执行该函数。如何做到这一点?试试下面的方法。。。它会起作用的 buttonnode.onclick = function (){ddiv(this);}; 试试下面的。。。它将给出您需要的结果
函数chk(){
var buttonnode=document.createElement('input');
buttonnode.onClick=ddiv(buttonnode);
}
buttonnode.onclick自动调用ddiv函数,但我希望它等待单击以继续执行该函数。如何做到这一点?试试下面的方法。。。它会起作用的
buttonnode.onclick = function (){ddiv(this);};
试试下面的。。。它将给出您需要的结果
<html>
<body>
<style>
.divstyle
{
border: 1px solid red;
}
</style>
<script>
function myFunction()
{
var txt = document.getElementById("txtinfo");
//div Creation
var myDiv = document.createElement("div");
myDiv.setAttribute("class", "divstyle");
myDiv.innerHTML = "<br>" + txt.value + "<br>";
//Button Creation
var myButton = document.createElement("input");
myButton.type = "button";
myButton.value = "my button";
myDiv.appendChild(myButton);
document.body.appendChild(myDiv);
myButton.onclick = function (){ddiv(this,myDiv);};
}
function ddiv(btn, div)
{
div.parentNode.removeChild(div);
}
</script>
<button onclick="myFunction()">Try it</button>
<input type="text" value="Click the Below Button" id="txtinfo"/>
</body>
</html>
.divstyle
{
边框:1px纯红;
}
函数myFunction()
{
var txt=document.getElementById(“txtinfo”);
//div创建
var myDiv=document.createElement(“div”);
myDiv.setAttribute(“类”、“divstyle”);
myDiv.innerHTML=“
”+txt.value+”
”;
//按钮创建
var myButton=document.createElement(“输入”);
myButton.type=“button”;
myButton.value=“我的按钮”;
myDiv.appendChild(myButton);
文件.body.appendChild(myDiv);
myButton.onclick=function(){ddiv(this,myDiv);};
}
功能ddiv(btn,div)
{
div.parentNode.removeChild(div);
}
试试看
现在它不会自动执行onclick。这很好,但同时它不调用ddiv函数。现在怎么办?函数ddiv(div){div.style.background=“orange”;div.parentNode.removeChild(buttonnode);}我想要的是当单击buttonnode时,它会删除parents。您创建输入元素并将其作为参数传递,但在该函数中使用div。。。我无法理解你的想法。。。你能解释一下这个概念吗?你想创建一个DIV,如果我们点击这个DIV,你需要一些动作,对吗?这太棒了,谢谢潘迪安,它成功了。非常感谢你的努力。
<html>
<body>
<style>
.divstyle
{
border: 1px solid red;
}
</style>
<script>
function myFunction()
{
var txt = document.getElementById("txtinfo");
//div Creation
var myDiv = document.createElement("div");
myDiv.setAttribute("class", "divstyle");
myDiv.innerHTML = "<br>" + txt.value + "<br>";
//Button Creation
var myButton = document.createElement("input");
myButton.type = "button";
myButton.value = "my button";
myDiv.appendChild(myButton);
document.body.appendChild(myDiv);
myButton.onclick = function (){ddiv(this,myDiv);};
}
function ddiv(btn, div)
{
div.parentNode.removeChild(div);
}
</script>
<button onclick="myFunction()">Try it</button>
<input type="text" value="Click the Below Button" id="txtinfo"/>
</body>
</html>