2016-07-19 11 views
0

Ich habe HTML im folgenden Format gerendert. Ich möchte in der Lage sein, die Werte 13,14,15 zu erhalten und in verschiedenen Variablen zu speichern. Ich möchte in der Lage sein, den Wert id = 9 auch für diese Zeile zu erhalten. Ich werde eine Tabelle aktualisieren und benötigt diese ID zusammen mit den anderen Zeilen.Abrufen der Werte in einer nicht geordneten Liste und Listenelemente

Hier ist der HTML

 <li class="main"> 
      <ul class="sub"> 
      <li id="9"> 
       <div class="innera">13</div> 
       <div class="innerb">14</div> 
       <div class="innerc">15</div> 
       <div class="innerpencil"> 
        <img class="modify" src="/images/icon-pencil" /> 
       </div> 
      </li> 
      </ul> 
     <li> 

Hier wird die jquery ich

 $(document).on("click", "img.modify", function() { 
      var rowA = $("ul[class='sub'] li[div.class innera]") 
      var rowB = $("ul[class='sub'] li[div.class innerb]") 
      var rowB = $("ul[class='sub'] li[div.class innerc]") 
      var Id of row ? 
     }); 

Im Moment habe ich nichts bin nicht für die Variablen immer zu schreiben versuche gemacht? Bitte helfen.

Antwort

0

Ich denke, man muss nur die jQuery (CSS) Auswahl Bewertung: https://api.jquery.com/category/selectors/

$("ul[class='sub'] li[div.class innera]") wird leider nichts gefunden.

$('ul.sub>li>div.innera') würde funktionieren, aber vielleicht möchten Sie etwas ein wenig anders. Werfen Sie einen Blick auf die Selektoren Dokumente und einige Versuch und Irrtum :)

+0

Dank. Es funktioniert nicht – user2320476

+0

Ja, es tut: https://jsfiddle.net/ycwaswjh/ Vielleicht sollten Sie klären, was Sie zu tun versuchen – dan08

+1

@ user2320476 - "Es funktioniert nicht" ... ** Was ** funktioniert nicht? _ Was hast du wirklich versucht, basierend auf dieser Antwort? "Es funktioniert nicht" ist in keiner Weise hilfreich für die Person, die versucht, Ihnen zu helfen. Und um ganz klar zu sein, benutzen Sie nicht das Wort 'class', wenn Sie einen Selektor schreiben, um eine Klasse zu erhalten –

-1

Kannst du nicht eine foreach-Schleife auf dem li-Tag verwenden?

Gefällt Ihnen?

$(document).on("click", "img.modify", function() { 
     var id = $('.sub > li').first().attr("id"); 
     console.log(id); 

     $('#'+id+' > .divValue').each(function() { 
      var variableName = $(this).text(); 
      console.log(variableName); 


     }); 

    }); 

    } 

Ich würde eine Klasse zu den Elementen Wert hinzufügen, die Sie wollen.

So:

<li class="main"> 
      <ul class="sub"> 
      <li id="9"> 
       <div class="innera divValue">13</div> 
       <div class="innerb divValue">14</div> 
       <div class="innerc divValue">15</div> 
       <div class="innerpencil"> 
        <img class="modify" src="/images/icon-pencil" /> 
       </div> 
      </li> 
      </ul> 
     <li> 
+0

Danke. Ich werde das auch versuchen und zu dir zurückkommen. – user2320476

Verwandte Themen