如何使用Javascript在DOM中访问和使用动态创建的带有ID的html元素
我使用普通JavaScript创建了一个待办事项应用程序,当输入字段中键入并添加一个待办事项(文本)时,程序会动态创建两个html元素(一个范围和一个按钮),并为它们提供ID和事件处理程序等属性,跨距是待办事项输入文本落下的位置,而按钮的功能是通过简单地敲击文本来删除输入文本。 现在,当我试图创建一个按钮功能,按钮,以打击文本,它不会工作 这是我的密码 html如何使用Javascript在DOM中访问和使用动态创建的带有ID的html元素,javascript,html,Javascript,Html,我使用普通JavaScript创建了一个待办事项应用程序,当输入字段中键入并添加一个待办事项(文本)时,程序会动态创建两个html元素(一个范围和一个按钮),并为它们提供ID和事件处理程序等属性,跨距是待办事项输入文本落下的位置,而按钮的功能是通过简单地敲击文本来删除输入文本。 现在,当我试图创建一个按钮功能,按钮,以打击文本,它不会工作 这是我的密码 html 3待办事项 你要做的事 var get=document.getElementById('import'); var no=0
3待办事项
你要做的事
var get=document.getElementById('import');
var no=0;
var-click=0;
var输入;
var count=新数组(“一”、“二”、“三”);
var count2=新数组('a','b','c');
var-me=0;
document.getElementById('input001')。addEventListener('keypress',函数(e){
//输入输入框的键侦听器!
var key=e.which | e.keyCode;
如果(键==13){
e、 预防默认值();
send();
}
})
函数send(){
输入=input001.0值;
如果((输入==“输入一项任务”)| |(输入==”){
Alert.render(“未设置待办事项!”);
}else if((输入!=“输入要做的事”)| |(输入!=“输入”){
如果(无2个变化:
您需要将一个参数传递给del()
函数
在这种情况下,我修改了您的代码以传递click事件。然后,我在if/else块中检查单击元素的id
.strike()
是一个String
函数,但您正在将其应用于DOM元素。您需要获取DOM文本,对其应用.strike()
,并将innerHTML
值设置为它
get
是javascript中的一个关键字,我将它改为get1
3待办事项
你要做的事
var get1=document.getElementById('import');
var no=0;
var-click=0;
var输入;
var count=新数组(“一”、“二”、“三”);
var count2=新数组('a','b','c');
var-me=0;
document.getElementById('input001')。addEventListener('keypress',函数(e){
//输入输入框的键侦听器!
var key=e.which | e.keyCode;
如果(键==13){
e、 预防默认值();
send();
}
})
函数send(){
输入=input001.0值;
如果((输入==“输入一项任务”)| |(输入==”){
Alert.render(“未设置待办事项!”);
}else if((输入!=“输入要做的事”)| |(输入!=“输入”){
如果(不,非常感谢你的回答,相信它是有用的,我从你那里学到了一些有用的东西,请保持这种精神!
<body>
<div>
<h1>
<span id="cls">3</span> To-DOs</h1>
<input type="text" value="Enter A To-Do" id="input001" onclick="this.select()" onmouseout="this.style.transition = 0.5 + 's';"
/>
<br />
<br />
<input type="button" value="Insert" id="button" onmouseout="document.getElementById('button').style.transition = 0.5 + 's';"
onclick="send()">
</div>
<div>
<fieldset>
<legend>Your To-Do(s)</legend>
<p id="import"> </p>
</fieldset>
</div>
<script type="text/javascript">
var get = document.getElementById('import');
var no = 0;
var click = 0;
var input;
var count = new Array("one", "two", "three");
var count2 = new Array('a', 'b', 'c');
var me = 0;
document.getElementById('input001').addEventListener('keypress', function (e) {
// Enter Key Listener for the input box!
var key = e.which || e.keyCode;
if (key == 13) {
e.preventDefault();
send();
}
})
function send() {
input = input001.value;
if ((input == "Enter A To-Do") || (input == "")) {
Alert.render("No To-Do Is Set!");
} else if ((input != "Enter A To-Do") || (input != "")) {
if (no <= 2) {
click++;
no++;
var element = document.createElement('span');
element.innerHTML = no + " ." + input + " ";
element.id = count[me];
var btnOne = document.createElement('button');
btnOne.innerHTML = 'x';
btnOne.id = count2[me];
btnOne.setAttribute("onclick", "del()");
window.elementTwo = element;
window.btnTwo = btnOne;
get.appendChild(elementTwo);
get.appendChild(btnTwo);
get.innerHTML += "<br />" + "<br />";
input001.value = "";
me++;
} else if (no == 3) {
Alert.render("Your 'To-Do Activity' input Limit On Your List Is Reached!" + "<br />" + "You Can't Add More! :(");
}
}
}
function del() {
if(document.getElementById('a').clicked == true){
document.getElementById('one').stike();
}else if(document.getElementById('b').clicked == true){
document.getElementById('two').stike();
}else if(document.getElementById('c').clicked == true){
document.getElementById('three').stike();
}
}
</script>
</body>
</html>