[英]Adding onclick event to input field programmatically in javascript doesn't work
我希望我的Input
字段看起来像这样:
<input type="submit" value="Remove" onclick="deleteRow(this)">
但这不起作用。 我试图:
Input.onclick = function () { deleteRow(this); };
效果不佳。 我的deleteRow函数如下所示:
function deleteRow(o) {
var p = o.parentNode.parentNode;
p.parentNode.removeChild(p);
}
关于如何使其工作的任何建议?
您可以在input
字段中添加一个id
,并将onclick
事件附加到该字段:
function DeleteRow(o) { var p = o.parentNode.parentNode; p.parentNode.removeChild(p); } document.getElementById("myinput").onclick = function () { DeleteRow(this); };
<input type="submit" id="myinput" value="Remove" onclick="DeleteRow(this)">
试试这个。 如果您无意提交,请将type=submit
更改为type=button
function DeleteRow(o) { var p = o.parentNode.parentNode; console.log(p); p.parentNode.removeChild(p); }
<div id="one"> <div id="two"> Goint to be deleted <form id="three"> <input type="button" value="Remove" onclick="DeleteRow(this)"> </form> </div> </div>
但是如果您需要保持type=submit
,我认为您也应该像这样传递事件参数
<!-- in case you need to use submit, pass event as parameter-->
<input type="submit" value="Remove" onclick="DeleteRow(this, event)">
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.