Frage

Hallo ich etwas versuchen .. Ich lese JQuery Dokumentationen einige Foren durchlaufen, diese Websites zuvor gestellte Fragen zu diesem Thema im Zusammenhang .. kein eigentlich beantwortet meine Frage so werde ich stattdessen fragen .. hier ist der Deal

  <div class="entry">
week
<span>some text</span>
<p>DKK</p>
<input type="radio" name="red<% Response.Write(counter); %>" id="radio2" value="75" />

</div>

Also habe ich eine while-Schleife verwendet habe Bündel von diesen zu schaffen, damit habe ich nicht manuell kopieren einfügen .. asp erzeugt sie .. Jetzt sehen Sie den p Abschnitt es DKK sagt .. jetzt, um für mich nicht alles zu schreiben, würde ich manuell alle divs mögen, p mit dem Wert des Eingangs innerhalb dieses div anhängen, ist jetzt hier, was ich mit JQuery tat

$(document).ready(function() {
     $("input").each(function () {
                 var element_value = $(this).val();
                 $(this).closest("p").append(element_value + ",-");
                  }); 
 }); 

Also, was ich versucht, jede Eingabe zu tun ist, gehen Trog und ihren Wert zu sammeln, dann am nächsten Tag p finden und es mit seinem Wert anhängen, jetzt das richtige Ergebnis für dieses Beispiel oben wäre

<p>DKK 75,-<p>

, weil Eingangswert 75 ist, und es hat in Append-Funktion enthalten, - hinzufügen, dass auch dieser Code nicht funktioniert, aber wenn ich put

$(this).parents("div.entry").append(element_value + ",-");

instead of

$(this).closest("p").append(element_value + ",-");

Die richtigen Ergebnisse erscheinen aber nicht genau, wo ich sie wollen .. hoffentlich kann mir jemand helfen, danke

War es hilfreich?

Lösung

Wenn Sie die Dokumentation für die am nächsten () lesen, werden Sie sehen, es sieht nur nach oben, nicht zur Seite:

  

Hier finden Sie eine Reihe von Elementen, das nächste übergeordnete Element enthalten, die den angegebenen Selektor entspricht, das Startelement enthielt.

Sie können dies tun, um den vorherigen <p> von dem Eingang zu finden:

$(this).prev("p").append(element_value + ",-");

Oder ein deutlicher:

$(this).closest("div.entry").find("p").append(element_value + ",-");

Welche, auf welcher Seite des <p> die Eingabe dann nicht geschieht abhängen würde sein.

Andere Tipps

Versuchen Sie folgendes:

$(this).parents("div.entry").find('p:first').append(element_value + ",-");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top