Tuesday, 15 June 2010

javascript - Finding the value of a class within a list -



javascript - Finding the value of a class within a list -

i have

<ul id="list"> <li data-markerid="0" class=""> <div class="list-label">a</div> <div class="list-details"> <div class="list-content"> <div class="loc-id">2</div> <div class="loc-addr">england</div> <div class="loc-dist">2 miles</div> <div class="loc-addr2">test</div> <div class="loc-addr2">bristol</div> </div> </div> </li> <li data-markerid="1" class=""> <div class="list-label">a</div> <div class="list-details"> <div class="list-content"> <div class="loc-id">3</div> <div class="loc-addr">england</div> <div class="loc-dist">60 miles</div> <div class="loc-addr2">test</div> <div class="loc-addr2">london</div> </div> </div> </li> </ul>

i'm wanting extract value of using jquery.

i tried:

var targetid = $(this).find('.loc-id').text();

but gets me values of both loc-id's. want 1 i'm selecting (clicking).

for total context, please here: parsing info using jquery

$('#list').click(function () { //change src of img var targetid = $(this).find('.loc-id').text(); // id // since array of objects isn't indexed, need loop find right 1 var foundobject = null; (var key in parsedarray) { if (parsedarray.hasownproperty(key) && parsedarray[key].id == targetid) { foundobject = parsedarray[key]; break; } } // if object found, extract image , set! if (!foundobject) return; var imagesrc = foundobject.locationphoto; // object $('#location-image').attr('src', imagesrc); // set new source });

thanks

in click handler, this references <ul> element has multiple <li> children.

change click handler deed delegate instead:

$('#list').on('click', 'li', function () {

now, within click handler, this references <li> element search should yield single value.

javascript jquery

No comments:

Post a Comment