html 자바스크립트 for loop 중 id 변경해가며 value 찾기
본문
구글링을 해도 방법을 모르겠어서요.
for-loop를 통해 id 값을 변경해가며 value를 받는게 가능할까요?
아래와 같이 쓰면 작동을 안하는거 같아서요?
for (let i = 0; i < 5; i++) {
let val = getElementById('input0' + i).value
}
document.getElementById("input05_a00").value
document.getElementById("input05_a01").value
document.getElementById("input05_a02").value
document.getElementById("input05_a03").value
document.getElementById("input05_a04").value
document.getElementById("input05_a05").value
위와 같이 쓰여진거를 for-loop를 통해 id 값을 변경해가며 value를 받는게 가능할까요?
다음과 같은 형태로 가능할까요? 이렇게 쓰니 작동안하는거 같아서요.
for (let i = 0; i < 5; i++) {
let val = getElementById('input0' + i).value
답변 4
input05_a00 input05_a01 이런 문자열을 만들어야 하는데 i만 더하니 되나요
input05_a0<==이게 기본으로 들어가야죠
let val = getElementById('input05_a0' + i).value
<ul>
<li><input type="text" value="input00" id="input00"></li>
<li><input type="text" value="input01" id="input01"></li>
<li><input type="text" value="input02" id="input02"></li>
<li><input type="text" value="input03" id="input03"></li>
<li><input type="text" value="input04" id="input04"></li>
</ul>
<script>
for (let i = 0; i < 5; i++) {
//let val = getElementById('input0' + i).value;
let val = document.getElementById('input0' + i).value;
console.log(val);
}
</script>
for (let i=0; i<10; ++i) {
const id = `input05_a${String(i).padStart(2, '0')}`
console.log(id, document.getElementById(id)?.value)
}
let val = '';
$('[id^="input05"]').each(faunction(i) {
val = $(this).val();
});