요금 계산식이 라디오버튼으로 되어 있던걸 셀렉트로 바꿀수 있을까요?

요금 계산식이 라디오버튼으로 되어 있던걸 셀렉트로 바꿀수 있을까요?

QA

요금 계산식이 라디오버튼으로 되어 있던걸 셀렉트로 바꿀수 있을까요?

본문

안녕하세요.

제가 사용하는 요금계산식이 하나 있습니다.

 

시작 날짜(달력선택) / 월(셀렉트) / 일(셀렉트)
종료 날짜(달력선택) / 월(셀렉트) / 일(셀렉트)

옵션선택(라디오버튼)

대략 이런식으로 되어 있습니다.

 

옵션선택 라디오 버튼은 
<input type="radio" name="wr_content" value="1번옵션" <?php echo ($write['wr_content'] == "1번옵션" || $write['wr_content'] == "") ? " checked" : "";?>> 1번옵션 
<input type="radio" name="wr_content" value="2번옵션" <?php echo ($write['wr_content'] == "2번옵션") ? " checked" : "";?>> 2번옵션 
<input type="radio" name="wr_content" value="3번옵션" <?php echo ($write['wr_content'] == "3번옵션") ? " checked" : "";?>> 3번옵션 
<input type="radio" name="wr_content" value="4번옵션" <?php echo ($write['wr_content'] == "4번옵션") ? " checked" : "";?>> 4번옵션 
이런식으로 되어 있고,


스크립트 중 wr_content이 나오는 부분이

...
    var nToHour = $('#hour2').val();
    var nToMinute = $('#minute2').val();

    var nType = $('input:radio[name=wr_content]:checked').val();

...

$(function(){
    $('input:radio[name=wr_content]').click(function(){
        if($("#sdate").val() != "" && $("#edate").val() != "") GoPayCheck();
    });

이런식으로 두군데 있습니다.

 

날짜와 시간 옵션에 따라 가격이 변경되게 되어 있는데, 
라디오 버튼을 셀렉트로 바꾸고 싶어서 이리저리수정해 봤는데, 
첫번째 옵션의 값만 나오고 2, 3, 4번째는 나오질 않네요.

 

라디오 버튼은 아래처럼 셀렉트로 변경했고

<select name="wr_content" class="frm_input">
<option value="1번옵션" <?=($write['wr_content'] == "1번옵션")?'selected':'';?>>1번옵션</option>
<option value="2번옵션" <?=($write['wr_content'] == "2번옵션")?'selected':'';?>>2번옵션</option>
<option value="3번옵션" <?=($write['wr_content'] == "3번옵션")?'selected':'';?>>3번옵션</option>
<option value="4번옵션" <?=($write['wr_content'] == "4번옵션")?'selected':'';?>>4번옵션</option>
</select>

 

스크립트 부분중 input:radio... 이 부분을 수정해야될거 같아서, 
삭제도 해보고 이리저리 바꿔 봤지만 기본 지식이 없다보니 원하는대로 되지 않고 있습니다.

 

애초에 불가능한건지, 아니면 수정을 해준다면 가능한건지도 모르는데,

혹시 가능하고 어렵지 않은거라면 방법좀 부탁드려도 될까요?

 

감사합니다.


 

이 질문에 댓글 쓰기 :

답변 1

질문의 내용을 기준으로 다음과 같이 해볼 수 있을 것 같습니다.

 

각 옵션에 고유한 ID를 부여하고, 셀렉트 드롭다운에서 선택된 값을 처리하도록 JavaScript 코드를 업데이트 하면 되지 않을까 합니다.

 

참고하셔서 원하시는 로직으로 구현하시면 될 것 같네요


<select name="wr_content" id="wr_content" class="frm_input">
  <option value="1번옵션" <?=($write['wr_content'] == "1번옵션")?'selected':'';?>>1번옵션</option>
  <option value="2번옵션" <?=($write['wr_content'] == "2번옵션")?'selected':'';?>>2번옵션</option>
  <option value="3번옵션" <?=($write['wr_content'] == "3번옵션")?'selected':'';?>>3번옵션</option>
  <option value="4번옵션" <?=($write['wr_content'] == "4번옵션")?'selected':'';?>>4번옵션</option>
</select>

 


...
var nToHour = $('#hour2').val();
var nToMinute = $('#minute2').val();
var nType = $('#wr_content').val();
...
 
 
$(function() {
  $('#wr_content').change(function() {
    if ($("#sdate").val() != "" && $("#edate").val() != "") {
      GoPayCheck();
    }
  });
});

친절하신 답변 정말 감사합니다.
알려주신 방법 처음에는 작동 안되었는데,
아래부분 조금 수정하니 제가 원하는대로 작동을 하네요.
덕분에 해결하였습니다.
다시한번 감사 인사 드립니다.

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

회원로그인

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