亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在數組方法 delete 中刪除輸入的問題

在數組方法 delete 中刪除輸入的問題

慕森卡 2023-03-24 14:19:47
當我嘗試刪除添加的輸入時,我收到一條錯誤消息,指出值為 NULL。所以我的想法是,當我點擊刪除時,只有輸入被刪除,而不是所有輸入。函數myFunction(),那里的輸入被添加到數組中。實際上我也想使用 Up Down 但首先 Delete 必須工作,但如果你知道我如何做 Up 和 Dwon,請寫下答案。var Array = [];function myFunction() {  //console.log('test');  var todoItem = document.getElementById('new-todo-item').value;  const Input = document.querySelectorAll('input[name="todo-item-done"]');  console.log(Input.value);  //Input von Add  Array.unshift(todoItem);  document.getElementById("todo-list").innerHTML +=    "<li>" +       "<input type='text'" + " name='todo-item-done'" +        " class='todo-item-done'" + " value='" + todoItem +      "'> " +      "<a id= 'myDIV' class='up' onclick='UpDown()' href='#'>" + "up"+"</a>" +      " | " +      "<a class='down' onclick='UpDown()' href='#'>" + "down"+"</a> " +      "<button onclick='deleteData()' class='todo-item-delete'>Delete</button>" +    "</li>"  ;    document.getElementById('new-todo-item').value = "";}function deleteData() {var deleteValue = document.getElementsByName('todo-item-done').value;  var index = Array.indexOf(deleteValue);  if (index !== -1) {    Array.splice(index, 1);  }}<h1>To-Do List</h1><label for="todo">To do:</label><input type="text" id="new-todo-item"><input onclick="myFunction()" type="submit" id="add-todo-item" value="add the todo"><ul id="todo-list" class="todo-list"></ul>
查看完整描述

1 回答

?
慕桂英546537

TA貢獻1848條經驗 獲得超10個贊

兩個問題:首先,正如 Matt 指出的那樣,您不應該使用Arrayas 變量名——它是一個保留字——所以Array改為arr. 其次,刪除按鈕需要針對input同一li元素中的標記。因此,更改變量名稱并定位正確的input標簽,我得到:


var arr = [];


function myFunction() {

  //console.log('test');

  var todoItem = document.getElementById('new-todo-item').value;

  const Input = document.querySelectorAll('input[name="todo-item-done"]');

  //console.log(Input.value);


  //Input von Add

  arr.unshift(todoItem);

  document.getElementById("todo-list").innerHTML +=

    "<li>" + 

      "<input type='text'" + " name='todo-item-done'" +

        " class='todo-item-done'" + " value='" + todoItem +

      "'> " +

      "<a id= 'myDIV' class='up' onclick='UpDown()' href='#'>" + "up"+"</a>" +

      " | " +

      "<a class='down' onclick='UpDown()' href='#'>" + "down"+"</a> " +

      "<button onclick='deleteData(this)' class='todo-item-delete'>Delete</button>" +

    "</li>"

  ;

  

  document.getElementById('new-todo-item').value = "";

}


function deleteData(e) {

  console.log(arr);

  let p = e.parentNode;

  console.log(p);

  let deleteValue = p.getElementsByTagName("input")[0].value;

  var index = arr.indexOf(deleteValue);

  if (index !== -1) {

    arr.splice(index, 1);

  }

  p.remove();

  console.log(arr);

}

<h1>To-Do List</h1>

<label for="todo">To do:</label>

<input type="text" id="new-todo-item">

<input onclick="myFunction()" type="submit" id="add-todo-item" value="add the todo">

<ul id="todo-list" class="todo-list"></ul>


查看完整回答
反對 回復 2023-03-24
  • 1 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號