스크립트 콤마 빠지는 문제

스크립트 콤마 빠지는 문제

QA

스크립트 콤마 빠지는 문제

본문

가격선택을 통해서 선택한 값이 인풋트 창에 표기될때

콤마가 표기가 안됩니다.

1,000 처럼 되어야 하는데 --> 1000  처럼 콤마가 빠짐


<tr>
 <td width="60" height="20" align="right">보증금 :</td>
 <td align="left"> <input class='ed' type=text id=t_start name='t_start' size=8 maxlength=8 minlength=3 
  itemname='시작일' onKeyUp="number_format(this)" value='<?=$t_start?>'> 만원
   ~ <input class='ed' type=text id=t_end name='t_end' size=8 maxlength=8 minlength=3 
  itemname='마지막일' onKeyUp="number_format(this)" value='<?=$t_end?>'> 만원</td>


  <td><select name='price_junse' style='font-size:;'  onChange="check_selectbox('price_junse','t_start','t_end','','~')"><option value='' selected style='background-color:'>가격선택</option><option value='100~500'>100만원~500만원</option><option value='500~1,000'>500만원~1,000만원</option><option value='1,000~2,000'>1,00만원~2,000만원</option><option value='2,000~3,000'>2,000만원~3,000만원</option></select></td>
</tr>



<script>
 function check_selectbox( selName , inputName1 , inputName2, inputName3, gubun )
 {
  //alert('test');
  selIndex = document.getElementsByName(selName)[0].selectedIndex;
  //alert(document.getElementsByName(selName)[0].options[ selIndex ].value);

  if ( selIndex == 0 )
  {
   document.getElementsByName(inputName1)[0].readOnly = false;
   document.getElementsByName(inputName2)[0].readOnly = false;

   document.getElementsByName(inputName1)[0].value  = "";
   document.getElementsByName(inputName2)[0].value  = "";

   if ( inputName3 != '' )
   {
    document.getElementsByName(inputName3)[0].readOnly = false;
    document.getElementsByName(inputName3)[0].value  = "";
   }

   document.getElementsByName(inputName1)[0].focus();
  }
  else if(document.getElementsByName(selName)[0].options[ selIndex ].value == 'self input')
  {
   document.getElementsByName(inputName1)[0].readOnly = false;
   document.getElementsByName(inputName2)[0].readOnly = false;
  }
  else
  {
   var nowVal = document.getElementsByName(selName)[0].options[ selIndex ].value;
   var nowVals = nowVal.split(gubun);

   if ( nowVals[0] && nowVals[1])
   {
    document.getElementsByName(inputName1)[0].value  = nowVals[0].replace(/\D/g,'');
    document.getElementsByName(inputName2)[0].value  = nowVals[1].replace(/\D/g,'');

    document.getElementsByName(inputName1)[0].readOnly = true;
    document.getElementsByName(inputName2)[0].readOnly = true;

   } else if ( !nowVal[1] ) {

    document.getElementsByName(inputName1)[0].value  = nowVals[0].replace(/\D/g,'');
    document.getElementsByName(inputName2)[0].value  = "";

    document.getElementsByName(inputName1)[0].readOnly = false;
    document.getElementsByName(inputName2)[0].readOnly = false;
   }


   if ( inputName3 != '' )
   {

    document.getElementsByName(inputName3)[0].readOnly = true;
    document.getElementsByName(inputName3)[0].value  = nowVals[2].replace(/\D/g,'');
   }

  }
 }


 function start_selectbox( selName , inputName1 , inputName2, inputName3, gubun )
 {
  if ( !document.getElementsByName(selName)[0] )
  {
   return;
  }

  selIndex = document.getElementsByName(selName)[0].selectedIndex;

  if ( selIndex == 0 )
  {
   document.getElementsByName(inputName1)[0].readOnly = false;
   document.getElementsByName(inputName2)[0].readOnly = false;

   if ( inputName3 != '' )
    document.getElementsByName(inputName3)[0].readOnly = false;

   //document.getElementsByName(inputName1)[0].focus();
   // 페이지 이동시 커서가 인풋박스로 이동하여 상단이 안보이는 문제로 주석처리 there007
  }
  else
  {
   document.getElementsByName(inputName1)[0].readOnly = true;
   document.getElementsByName(inputName2)[0].readOnly = true;

   if ( inputName3 != '' )
    document.getElementsByName(inputName3)[0].readOnly = true;
  }
 }


</script>

#s

이 질문에 댓글 쓰기 :

답변 2

<tr>

  <td width="60" height="20" align="right">보증금 :</td>

  <td align="left">

     <input class='ed' type=text id=t_start name='t_start' size=8 maxlength=8 minlength=3

    itemname='시작일' onKeyUp="number_format(this)" value='<?=$t_start?>'> 만원

     ~ <input class='ed' type=text id=t_end name='t_end' size=8 maxlength=8 minlength=3

    itemname='마지막일' onKeyUp="number_format(this)" value='<?=$t_end?>'> 만원

  </td>


  <td><select name='price_junse' style='font-size:;'  id="price_junse"><option value='' selected style='background-color:'>가격선택</option><option value='100~500'>100만원~500만원</option><option value='500~1,000'>500만원~1,000만원</option><option value='1,000~2,000'>1,00만원~2,000만원</option><option value='2,000~3,000'>2,000만원~3,000만원</option></select></td>

</tr>


<script>

$("#price_junse").on("change", function() {

    var arr = this.value.split("~");

    $("#t_start").val(arr[0]).attr("readonly",true);

    $("#t_end").val(arr[1]).attr("readonly",true);

})

</script>

<tr>
  <td width="60" height="20" align="right">보증금 :</td>
  <td align="left">
    &nbsp;<input class='ed' type=text id=t_start name='t_start' size=8 maxlength=8 minlength=3
    itemname='시작일' onKeyUp="number_format(this)" value='<?=$t_start?>'> 만원
    &nbsp;~&nbsp;<input class='ed' type=text id=t_end name='t_end' size=8 maxlength=8 minlength=3
    itemname='마지막일' onKeyUp="number_format(this)" value='<?=$t_end?>'> 만원
  </td>

  <td><select name='price_junse' style='font-size:;'  id="price_junse">
  <option value='' selected style='background-color:'>가격선택</option>
  <option value='100~500'>100만원~500만원</option><option value='500~1,000'>500만원~1,000만원</option><option value='1,000~2,000'>1,00만원~2,000만원</option><option value='2,000~3,000'>2,000만원~3,000만원</option></select></td>
</tr>

<script>
$("#price_junse").on("change", function() {
    if (this.value) {   
        var arr = this.value.split("~");
        $("#t_start").val(arr[0]).attr("readonly", true);
        $("#t_end").val(arr[1]).attr("readonly", true);
    } else {
        $("#t_start").val("").attr("readonly", false);
        $("#t_end").val("").attr("readonly", false);
    }
})
</script>

다시 올려주신 스크립트도 input 으로 값을 넘겨주지 못하는것 같습니다.
다른분의 도움으로 replace(/\D/g,''); 를 제거해서 콤마도 넘어가게 되었습니다.
부족한 질문에도 이렇게 신경써 답변주셔서 감사드려요.

number_format(this) 란 것은 있는데, 

number_format(this) 이함수를 정의하는 소스는 누락된듯 싶네요.

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

회원로그인

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