알이즈웰

jQuery 자식요소 seletor & li의 value 가져오기 본문

Programming/Front-End

jQuery 자식요소 seletor & li의 value 가져오기

2017. 6. 6. 12:38


jsp 코드 : controller에서 가져와서 동적으로 뿌림


<ul id="trendGroupList">

<c:foreach var="result" items="${resultList}" varstatus="status">

<li value="${result.tgId}"><c:out value="${result.tgName}" escapexml="false"></c:out></li>

</c:foreach>

</ul>



JavaScript - jQuery로 자식 요소 li 중 선택한 아이를 불러오고싶다.

그렇지만 동적으로 추가된 요소에는 이벤트가 적용되지 않는다.

그럴땐 on으로 click 이벤트를 주면된다.

(아래 코드는 선택한 li에 대해서 클래스를 준것(퍼블리싱이 없어서 따로 효과줌)


/* Javascript Sample */
$("#trendGroupList").on("click", "li", function(){
			$(this).siblings().removeClass();
			$(this).addClass("devTrendGroup");
			selectTrendGroup($(this).val());
		});



part2.


번외로 애먹었던것. 아직 완성하진않았지만 왜 그런지 문제가 가늠이 된다.

jQuery 버전 문제인것 같은 느낌적인 느낌이!!!!!!!!!!!!!!!!!!!!!!!!!!!!



<ul id="tagList" class="devUlTagList">

    <li class="devTagList" value="valueA">textA</li>

    <li class="devTagList" value="valueB">textB</li>

    <li class="devTagList" value="valueC">textC</li>

</ul>



function test(){ $("#tagList").children().each(function(){ console.log("1. $(this).text() : "+$(this).text()+", $(this).attr() : "+$(this).attr("value")); }); $(".devTagList").each(function(){ console.log("2. $(this).text() : "+$(this).text()+", $(this).attr() : "+$(this).attr("value")); }); }


날 괴롭혔던 문제가 뭐냐면. 자꾸 li의 value를 못 가져오는 것이다....

저 li들을 배열로 가져와서 서비스단에서 처리해야되는데, 자꾸만 li의 value값을 0으로 가져오는것.

.attr('value') 로 가져오는 것으로 (위의 코드로) w3schools 에서 테스트하면 잘만 가져온다.


테스트해보고 든 생각이 문득 jQuery  버전문제가 아닐까 싶은거당....


내일 회사가서 다시한번 봐봐야겟당





->

li 태그의 value는 number만 가능하다고함

https://www.w3schools.com/tags/tag_li.asp

https://developer.mozilla.org/ko/docs/Web/HTML/Element/li

참고














Comments