select 박스 선택시 span 노출에서

select 박스 선택시 span 노출에서

QA

select 박스 선택시 span 노출에서

본문

select 박스 선택시 span id='wage1' 하고 span id='wage2' 를 선택노출 하도록 했는데

 

노출은 잘 되는데 변수값이 $spt_wage_start, $spt_wage_end 에 중복입력 되는 것 같습니다

 

최종적으로는 $spt_wage_start, $spt_wage_end 변수에 값이 들어가야 하는데

 

두개의 span문에서 변수값이 다르게 $spt_wage_start, $spt_wage_end 변수에 들어가려면 

 

어떻게 해야 할까요? 고수님들 부탁드립니다 

 

<span id='wage1' style='display:none'><input class="inputbox" style="width:100px;" name="spt_wage_start" id="spt_wage_start" itemname="급여선택"  value="<?php echo $spt_wage_start; ?>"> 원  ~ 
            <input class="inputbox" style="width:100px;" name="spt_wage_end" id="spt_wage_end" itemname="급여선택"  value="<?php echo $spt_wage_end; ?>"> 원  </span>
            <span id='wage2' style='display:none'><input class="inputbox" style="width:100px;" name="spt_wage_start" id="spt_wage_start" itemname="급여선택"  value="<?php echo $spt_wage_start; ?>"> 만원  ~ 
            <input class="inputbox" style="width:100px;" name="spt_wage_end" id="spt_wage_end" itemname="급여선택"  value="<?php echo $spt_wage_end; ?>"> 만원  </span>

이 질문에 댓글 쓰기 :

답변 3

<span id='wage1' style='display:none'> 의  id="spt_wage_start" 와
<span id='wage2' style='display:none'> 의  id="spt_wage_start" 아이디가 중복되어 있어서 오류가 날 것입니다.

 id="spt_wage_end" 도 마찬가지로 wage1, wage2 의 아이디가 고유하게 해야 합니다.
아이디는 중복되면 오류가 납니다.

name 도 중복되어 있는것 같네요...

네임으로 찾아가도록 했다면 아마 문제가 될 것입니다.

 

아이디 대신에 class 명으로 찾아가도록 하면 문제가 해결 될 수도 있을 것입니다.

간단하게는 이렇게 중복이 없도록 구성하는 방법이 있습니다.

 

<span id='wage1' style='display:none'>
    <input class="inputbox" style="width:100px;" name="spt_wage_start_1" id="spt_wage_start_1" itemname="급여선택"  value="<?php echo $spt_wage_start_1; ?>"> 원  ~ 
    <input class="inputbox" style="width:100px;" name="spt_wage_end_1" id="spt_wage_end_1" itemname="급여선택"  value="<?php echo $spt_wage_end_1; ?>"> 원  
</span>

<span id='wage2' style='display:none'>
    <input class="inputbox" style="width:100px;" name="spt_wage_start_2" id="spt_wage_start_2" itemname="급여선택"  value="<?php echo $spt_wage_start_2; ?>"> 만원  ~ 
    <input class="inputbox" style="width:100px;" name="spt_wage_end_2" id="spt_wage_end_2" itemname="급여선택"  value="<?php echo $spt_wage_end_2; ?>"> 만원  
</span>

무슨 말인지 이해가 잘 안가는데
혹시 이런걸 말씀하시는 건가요?


<?php
$spt_wage_start_1 = 11;
$spt_wage_end_1 = 19;
$spt_wage_start_2 = 21;
$spt_wage_end_2 = 29;

$spt_wage_start = [$spt_wage_start_1, $spt_wage_start_2];
$spt_wage_end = [$spt_wage_end_1, $spt_wage_end_2];

$user_vars = get_defined_vars();
$user_vars = array_slice($user_vars, -6);

print_r($user_vars);
/*
Array
(
    [spt_wage_start_1] => 11
    [spt_wage_end_1] => 19
    [spt_wage_start_2] => 21
    [spt_wage_end_2] => 29
    [spt_wage_start] => Array
        (
            [0] => 11
            [1] => 21
        )

    [spt_wage_end] => Array
        (
            [0] => 19
            [1] => 29
        )

)
*/
?>

답변 너무 고맙습니다

제가 원하는 결과물은

span id='wage1 이 선택되고

$spt_wage_start = $spt_wage_end_1
$spt_wage_end =  $spt_wage_end_1

이렇게 변수에 입력되고

span id='wage2 는 실행이 되지 않는 것 입니다

그러나 질문내용 소스는 실행이 되는 거 같아요

span id='wage1 때 입력값들을 지우고
span id='wage2 에서 다시

$spt_wage_start = $spt_wage_end_2
$spt_wage_end =  $spt_wage_end_2

이렇게 중복으로 변수에 입력되는 거 같습니다

실행 결과물에서

$spt_wage_start = $spt_wage_end_1
$spt_wage_end =  $spt_wage_end_1 은 출력이 안되고

$spt_wage_start = $spt_wage_end_2
$spt_wage_end =  $spt_wage_end_2 은 출력이 됩니다

span id='wage1 때는 span id='wage2 실행이 안되고

span id='wage2 때는 span id='wage1는 실행이 안되어

최종적으로는 $spt_wage_start, $spt_wage_end 변수에 값이

중복되지 않게 입력되게 하는 조건문이 생각이 나지 않네요

이전에 올리신 소스를 봐서 그런지 그 소스에 맞게요.

여분필드가 3개 필요합니다.

게시판 여분필드라고 가정했을 때

 


<select id="wr_1" name="wr_1">
    <option style="display:none">선택하세요</option>
    <option>시급</option>
    <option>일당</option>
    <option>월급</option>
    <option>연봉</option>
</select>
<input id="wr_2" name="wr_2" value="<?php echo $write['wr_2']; ?>"> <span id="my_2"></span>
~
<input id="wr_3" name="wr_3" value="<?php echo $write['wr_3']; ?>"> <span id="my_3"></span>
<script>
wr_1.onchange = function() {
   my_2.innerText = my_3.innerText = (wr_1.value === "월급" || wr_1.value === "연봉") ? "만원" : "원";
}
wr_1.value = "<?php echo $write['wr_1']; ?>";
wr_1.onchange();
</script>

 

참고 - https://cafe.daum.net/gnuworld/ZJsu/3

답변을 작성하시기 전에 로그인 해주세요.
전체 10,639
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT