채택완료
php form안에 input 자동 생성 구현방법 질문 드립니다.
Copy
<script>
$(function(){
$(".spcode").each(function(){
var code = [];
$(this).find("input[name='spCode[]']:checked").each(function(){
code.push($(this).val());
});
if (code.length > 0){
var $input = $("<input>");
$input.attr("type","hidden");
$input.attr("name","spCode[]");
$input.attr("value",code);
$("form[name='spFrm']").append($input);
}
});
</script>
<form name="spFrm">
( * 하단 부분을 위 스크립트에서 전달받아 form 안에 자동생성 해주려고 합니다.
spCode가 다르면 새로운 input 생성 spCode가 같은면 value 값을 쉽표로 분류 111,222,333......
이부분을 php로 어떻게 구현해야 하나요? )
1. <input type="hidden" name="spCode[]" value="1111,2222,3333">
2. <input type="hidden" name="spCode[]" value="1234,2345,3456">
</form>
|
답변 1개 / 댓글 2개
채택된 답변
+20 포인트
질문 참 어렵습니다
input name='spCode[]' <--이게 어떤 모양으로 생겼는지 html태그를 보여주어야 질문을 보고 답을 알면 답변을 해줄텐데 소스를 해석해서 추측한 다음 답변 해달라고 하는 질문이니 쉽게 답변 받기 어렵겟습니다
답변에 대한 댓글 2개
아직도 질문을 보고 파악하기 어렵습니다
$(".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);
}
$(".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);
}
답변을 작성하려면 로그인이 필요합니다.
<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,와 같이 생성하려고 합니다.