테스트 사이트 - 개발 중인 베타 버전입니다

php form안에 input 자동 생성 구현방법 질문 드립니다. 채택완료

천사의눈 4년 전 조회 1,830

</p>

<p><script>

$(function(){</p>

<p>$(".spcode").each(function(){

            var code = [];

            $(this).find("input[name='spCode[]']:checked").each(function(){

                code.push($(this).val());

            });</p>

<p>            if (code.length > 0){

                var $input = $("<input>");

                $input.attr("type","hidden");

                $input.attr("name","spCode[]");

                $input.attr("value",code);

                $("form[name='spFrm']").append($input);

            }

        });</p>

<p></script>

 </p>

<p>     <form  name="spFrm"></p>

<p>( * 하단 부분을 위 스크립트에서 전달받아 form 안에 자동생성 해주려고 합니다.</p>

<p>spCode가 다르면 새로운 input 생성 spCode가 같은면 value 값을 쉽표로 분류 111,222,333...... </p>

<p>이부분을 php로 어떻게 구현해야 하나요? )</p>

<p>    1.          <input type="hidden" name="spCode[]" value="1111,2222,3333">

    2.          <input type="hidden" name="spCode[]" value="1234,2345,3456"></p>

<p>      </form></p>

<p> </p>

<p>

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
4년 전

질문 참 어렵습니다

input name='spCode[]' <--이게 어떤 모양으로 생겼는지 html태그를 보여주어야 질문을 보고 답을 알면 답변을 해줄텐데 소스를 해석해서 추측한 다음 답변 해달라고 하는 질문이니 쉽게 답변 받기 어렵겟습니다

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

천사의눈
4년 전
죄송합니다.
<input type="checkbox" name="spCode[]" value="111">
<input type="checkbox" name="spCode[]" value="222">
<input type="checkbox" name="spCode[]" value="333">
<input type="checkbox" name="spCode[]" value="123">
<input type="checkbox" name="spCode[]" value="234">
<input type="checkbox" name="spCode[]" value="345">
이런식으로 checkbox로 체크시 1, 2,와 같이 생성하려고 합니다.
균이
4년 전
아직도 질문을 보고 파악하기 어렵습니다

$(".spcode").each(function(){ <---이건 뭐하는 코드인가요?
이 부분에 체크박스를 클릭하면 이렇게 한다는 코드가 들어가야 하는 것 아닌가요?
.spcode <-- 이것은 어디에서 나온 class인가요?

spCode가 다르면 새로운 input 생성 spCode가 같은면 value 값을 쉽표로 분류 <-- 같다/ 다르다를 무엇으로 구분한다는 것인가요?

이부분을 php로 어떻게 구현해야 하나요? <--php로 구현 하다니요?
자바스크립트로 폼에 input 태그를 만들어 넣는 것 아닌가요?

하여튼 만드는 방법은 아래와 같습니다

var code = [];
var code2 = [];

$(this).find("input[name='spCode[]']:checked").each(function(){
if( $(this).val() 가 이러하면 ) code.push($(this).val());
else if( $(this).val() 가 저러하면 ) code2.push($(this).val());
});

if (code.length > 0){
code.join(',');
var $input = "<input type='hidden' name='spCodekkk[]' value='"+code+'">"; //spCodekkk[]<---체크박스에 같은 이름이 있으니 다른 이름으로 해야겠죠
$("form[name='spFrm']").append($input);
}
if (code2.length > 0){
code2.join(',');
var $input = "<input type='hidden' name='spCodekkk[]' value='"+code2+'">";
$("form[name='spFrm']").append($input);
}

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인