a href post방식으로 여러개 넘기기 채택완료
rlawhd
7년 전
조회 9,802
버튼이
★ ★ ★ ★
4개가 있습니다.
이걸 각각 클릭할때 각각 다른값(1,2,3,4)이 post방식으로 넘어가려고 합니다.
우선 생각해본방식은 input hidden으로 넘기려고하는데 여러개 넘기는게 어렵네요.
</p>
<p><form name="myForm" method="POST"></p>
<p><input type="hidden" name="myhidden" value="?"></p>
<p>~~//</p>
<p> </p>
<p><a href="javascript:document.myForm.submit();"> ★</a></p>
<p>
이런식인데
별 순서에따라 1,2,3,4를 어떻게 인식?해서 보내고
받는쪽도 어떻게 인식해서 첫번째 별은 1 두번째 별은 2 이렇게 받을 수 있을까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 3개
채택된 답변
+20 포인트
마르스컴퍼니
Expert
7년 전
data-* 속성을 추가하여 처리하는 방법이 있습니다.
</p>
<p><form name="myForm" method="POST">
<input type="hidden" name="myhidden" value="?">
~~//
<a href="javascript:;" data-val="1"> ★</a>
<a href="javascript:;" data-val="2"> ★</a>
<a href="javascript:;" data-val="3"> ★</a>
<a href="javascript:;" data-val="4"> ★</a>
</form>
<script>
$(function() {
$('a[data-val]').on('click', function() {
var selected_val = $(this).data('val');
$('input[name=myhidden]').val(selected_val);
$(this).closest('form').submit();
return false;
});
});
</script></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
r
rlawhd
7년 전
�
마르스컴퍼니
7년 전
[code]
<form name="myForm" method="POST">
<input type="hidden" name="myhidden" value="?">
~~//
<?php for ($i = 0; $i < count($array); $i++) { ?>
<a href="javascript:;" data-val="<?php echo $array[$i] ?>"> ★</a>
<?php } ?>
</form>
<script>
$(function() {
$('a[data-val]').on('click', function() { // data-val 속성값을 갖는 모든 버튼에 대해
var selected_val = $(this).data('val'); // 클릭된 버튼의 특정값 추출
$('input[name=myhidden]').val(selected_val); // myhidden 에 저장
$(this).closest('form').submit(); // form submit
return false;
});
});
</script>
[/code]
<form name="myForm" method="POST">
<input type="hidden" name="myhidden" value="?">
~~//
<?php for ($i = 0; $i < count($array); $i++) { ?>
<a href="javascript:;" data-val="<?php echo $array[$i] ?>"> ★</a>
<?php } ?>
</form>
<script>
$(function() {
$('a[data-val]').on('click', function() { // data-val 속성값을 갖는 모든 버튼에 대해
var selected_val = $(this).data('val'); // 클릭된 버튼의 특정값 추출
$('input[name=myhidden]').val(selected_val); // myhidden 에 저장
$(this).closest('form').submit(); // form submit
return false;
});
});
</script>
[/code]
댓글을 작성하려면 로그인이 필요합니다.
7년 전
자바스크립트하고 PHP 막 헷갈리시는 듯 자스는 for(var i=0;i < array.length;i++)
별 이부분을 for 문으로 돌리면 되시는거 아닌가요??
답변드린 코드는 가 4개든 40개든 상관없는건데요
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
7년 전
</p>
<p><form name="myForm" method="POST"></p>
<p><input type="hidden" name="myhidden" value=""></p>
<p></form></p>
<p> </p>
<p><a href="javascript:mySubmit(1)">★</a></p>
<p><a href="javascript:mySubmit(2)">★</a></p>
<p><a href="javascript:mySubmit(3)">★</a></p>
<p><a href="javascript:mySubmit(4)">★</a></p>
<p> </p>
<p><script></p>
<p>function mySubmit(val){</p>
<p> var f = document.myForm;</p>
<p> f.myhidden.value = val;</p>
<p> f.submit();</p>
<p>}</p>
<p></script></p>
<p>
이정도로 하면.....
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
r
rlawhd
7년 전
본문에 제대로 안적어놨습니다 죄송합니다.
별표가 그냥 4개 찍혀있는게 아니라
for문을 통해서 array.length (=4)라서 4개가 출력되는거였습니다.
더 정확히는
for($i=0; $i<$total.length(=4); $i++){
<a href="javascript:document.myForm.submit();" class="<?=$array[$i]?>> ★</a>
}
이런식입니다.
각 별표마다 javascript:document.myForm.submit() 을 통해서
다음 php파일로 hidden값을 보내지긴 하는데
버튼당 각각 hidden값을 어떻게 줘야하는지 궁금합니다.
마음같으면 class값을 보내주고싶은
별표가 그냥 4개 찍혀있는게 아니라
for문을 통해서 array.length (=4)라서 4개가 출력되는거였습니다.
더 정확히는
for($i=0; $i<$total.length(=4); $i++){
<a href="javascript:document.myForm.submit();" class="<?=$array[$i]?>> ★</a>
}
이런식입니다.
각 별표마다 javascript:document.myForm.submit() 을 통해서
다음 php파일로 hidden값을 보내지긴 하는데
버튼당 각각 hidden값을 어떻게 줘야하는지 궁금합니다.
마음같으면 class값을 보내주고싶은
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
별표가 그냥 4개 찍혀있는게 아니라
for문을 통해서 array.length (=4)라서 4개가 출력되는거였습니다.
더 정확히는
for($i=0; $i<$total.length(=4); $i++){
<a href="javascript:document.myForm.submit();" class="<?=$array[$i]?>> ★</a>
}
이런식입니다.
각 별표마다 javascript:document.myForm.submit() 을 통해서
다음 php파일로 hidden값을 보내지긴 하는데
버튼당 각각 hidden값을 어떻게 줘야하는지 궁금합니다.
마음같으면 class값을 보내주고싶은데..