자바스크립트 배열 post로 넘기기 채택완료
많은도움필요
3년 전
조회 4,099
checked된 체크박스에 어트리뷰트인 row를 배열에 담아서 php로 보내고 싶습니다.
어떻게 해야하나요 ?ㅠㅠ
</p>
<p><script></p>
<p> let del = document.getElementById("del");</p>
<p> let list = document.querySelectorAll(".check");</p>
<p> </p>
<p> del.onclick = function() {</p>
<p> for (let i = 0; i < list.length; i++) {</p>
<p> </p>
<p> if (list[i].checked) {</p>
<p>
</p>
<p> console.log(list[i].getAttribute('row'))</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> }</p>
<p> }</p>
<p> </p>
<p> }</p>
<p> </script></p>
<p>저렇게까지해서 필요한 정보는 가져왔는데 보내는 방법을 모르겠습니다 ..ㅠ </p>
<p> </p>
<p>
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
3년 전
가장 간단한 방법은 아래처럼 값들을 합쳐서 전송하고 php에서 잘라서 사용하면 되겠습니다
데이터가 get으로 넘기기 적당하지않다면 form을 만들어 놓고 합친값을 form의 input값으로 넣어서 submit
</p>
<p>deli=str='';</p>
<p>for~~~{</p>
<p> if~~ </p>
<p><span class="token keyword keyword-list"> str+=deli+list</span><span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">.</span><span class="token function">getAttribute</span><span class="token punctuation">(</span><span class="token single-quoted-string string">'row'</span><span class="token punctuation">)</span><span class="token punctuation">; deli='#';</span></p>
<p>}</p>
<p>location.href='test.php?data='+str;</p>
<p>=============</p>
<p>test.php</p>
<p> </p>
<p>$tmp= explode("#", $_GET['data']);</p>
<p> </p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
많은도움필요
3년 전
댓글을 작성하려면 로그인이 필요합니다.
3년 전
</p>
<p><script></p>
<p> let deli = str = '';</p>
<p> let del = document.getElementById("del");</p>
<p> let list = document.querySelectorAll(".check");</p>
<p> </p>
<p> del.onclick = function() {</p>
<p> for (let i = 0; i < list.length; i++) {</p>
<p> </p>
<p> if (list[i].checked) {</p>
<p>
</p>
<p> str += deli + list[i].getAttribute('row');</p>
<p> deli = '#';</p>
<p>
</p>
<p> }</p>
<p>
</p>
<p> }</p>
<p> </p>
<p> document.getElementById('delete_id').value = str;</p>
<p> console.log(document.getElementById('delete_id').value);</p>
<p>
</p>
<p> $(function() {</p>
<p> document.getElementById(del_form).submit();</p>
<p> });</p>
<p> </p>
<p>
</p>
<p> }</p>
<p> </script></p>
<p> </p>
<p> <form action="delete.php" method="post" id=del_form></p>
<p> <input type="hidden" id='delete_id' name="data"></p>
<p> </form></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
균이
3년 전
$(function() { 삭제
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
<script>
let deli = str = '';
let del = document.getElementById("del");
let list = document.querySelectorAll(".check");
del.onclick = function() {
for (let i = 0; i < list.length; i++) {
if (list[i].checked) {
str += deli + list[i].getAttribute('row');
deli = '#';
}
}
document.getElementById('delete_id').value = str;
console.log(document.getElementById('delete_id').value);
$(function() {
document.getElementById(del_form).submit();
});
}
</script>
<form action="delete.php" method="post" id=del_form>
<input type="hidden" id='delete_id' name="data">
</form>
[/code]
이런식으로하면 안되는건가요 ..?