jquery 질문 드립니다. 채택완료
안녕하세요.
아래와 같은 문장이 있으면
jquery에서 data-param 안에 있는 아래 2개를 가져오고 싶은데
어떻게 수정해야 되나요?
commentNo:'12345'
objectId:'55555_10'
$(document).on('click','.u_cbox_btn_recomm',function(e){ var series_item = $(this).val("data-param")[commentNo];
alert(series_item); });
감사합니다.
답변 4개
</p>
<p><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></p>
<p> </p>
<p><script src="<a href="http://code.jquery.com/jquery-latest.min.js"></script>" target="_blank" rel="noopener noreferrer">http://code.jquery.com/jquery-latest.min.js"></script></a>
<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 + '}';</p>
<p> </p>
<p> var series_obj = JSON.parse(series_items);
console.log(series_obj);
alert(series_obj.commentNo);
alert(series_obj.objectId);
});
</script></p>
<p>
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
json형식이 아닌 일반 배열로 변형한 방법입니다
$(document).on('click', '.u_cbox_btn_recomm', function() {
param = $(this).data('param');
tmp = param.split(',');
data = [];
for(i=0; i
alert(data['mine']);
alert(data['commentNo']); alert(data['objectId']);
});
댓글을 작성하려면 로그인이 필요합니다.
</pre> <pre> <code>$(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); }); </code>
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
잘 작동하네요
감사합니다.