찾다

 >  Q&A  >  본문

제목: ID별로 최신 하위 요소를 제거하는 JavaScript는 효과가 제한적입니다.

사용자가 버튼을 클릭하여 입력을 제거할 수 있는 동적 목록을 만들고 있습니다. 새 입력이 생성되면 새 입력이 생성될 때마다 1씩 증가하는 카운터를 사용하여 하위 요소에 ID를 할당합니다. 그런데 ID별로 입력을 삭제하려고 하면 가장 최근에 생성된 입력만 삭제 가능한 것 같습니다.

5개의 새 입력을 생성한 다음 input:2에서 삭제 버튼을 클릭하면 5번째 입력과 버튼이 삭제되는 것을 확인했습니다. 따라서 프로세스 초기에 입력 및 버튼 ID를 설정하더라도 삭제 버튼을 클릭하면 행 카운터의 현재 값에만 의존합니다.

누가 나에게 이전 ID를 가리키는 방법에 대한 조언을 줄 수 있나요? 아니면 완전히 다른 방식으로 다시 작성해야 합니까? 저는 JS를 처음 접했기 때문에 이것이 끔찍한 JS 스크립트라면 사과드립니다!

으아아아 으아아아

P粉914731066P粉914731066341일 전520

모든 응답(2)나는 대답할 것이다

  • P粉311464935

    P粉3114649352024-01-17 13:07:07

    row 的值在每次迭代时都会发生变化,并且您的点击函数仅考虑它的最后一个值。您可以使用 let 确定其范围,bind 또는 요소를 제거 함수에 전달하면 조회도 건너뜁니다.

    으아악 으아악

    회신하다
    0
  • P粉605233764

    P粉6052337642024-01-17 00:06:51

    새 요소를 추가할 때마다 row 的值都会更新,因此不要直接使用 row 来获取 id。直接访问 button.idinput.id.

    으아악 으아악

    회신하다
    0
  • 취소회신하다