jquery 질문 드립니다.

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
jquery 질문 드립니다.

QA

jquery 질문 드립니다.

본문

안녕하세요.

아래와 같은 문장이 있으면 

<a href="#" data-action="vote" data-param="mine:false,commentNo:'12345',voteStatus:'SYMPATHY',objectId:'55555_10',ticket:'comic'" data-log="RPC.sym#RPC.unsym" class="u_cbox_btn_recomm"></a>

 

jquery에서 data-param 안에 있는 아래 2개를 가져오고 싶은데 

어떻게 수정해야 되나요?

commentNo:'12345'

objectId:'55555_10'

<script>

$(document).on('click','.u_cbox_btn_recomm',function(e){
    var series_item        = $(this).val("data-param")[commentNo];

    alert(series_item);
});

</script>

 

감사합니다.

이 질문에 댓글 쓰기 :

답변 4


<a href="#" data-action="vote" data-param="mine:false,commentNo:'12345',voteStatus:'SYMPATHY',objectId:'55555_10',ticket:'comic'" data-log="RPC.sym#RPC.unsym" class="u_cbox_btn_recomm">u_cbox_btn_recomm</a>
 
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(document).on('click','.u_cbox_btn_recomm',function(e){
    // var series_item        = $(this).val("data-param")[commentNo];
    // alert(series_item);
    var series_items = $(this).data('param');
    series_items = series_items.replace(/([^,]+):/g, '"$1":');
    series_items = series_items.replace(/:'(.*?)'(,|$)/g, ':"$1"$2');
    series_items = '{' + series_items + '}';
 
    var series_obj = JSON.parse(series_items);
    console.log(series_obj);
    alert(series_obj.commentNo);
    alert(series_obj.objectId);
});
</script>

$(document).on('click', '.u_cbox_btn_recomm', function() {
    var param = $(this).data('param');
    var d = JSON.parse(param);
    
    alert(d.commentNo);
    alert(d.objectId);
});



$(document).on('click', '.u_cbox_btn_recomm', function(e){
    var data_param = $(this).attr("data-param");
    var commentNo = data_param.match(/commentNo:'(.*?)'/)[1];
    var objectId = data_param.match(/objectId:'(.*?)'/)[1];
    
    alert(commentNo);
    alert(objectId);
});

json형식이 아닌 일반 배열로 변형한 방법입니다

  

$(document).on('click', '.u_cbox_btn_recomm', function() {
    param = $(this).data('param');    
    tmp = param.split(',');
    data = [];
    for(i=0; i<tmp.length; i++){
      tmp2 = tmp[i].split(':');
      data[tmp2[0]] = tmp2[1];
      }


    alert(data['mine']);
    alert(data['commentNo']);

    alert(data['objectId']);
});

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

회원로그인

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