Hallo Ich bin eine Anzahl von iframes zu meiner Seite hinzufügen. Iframes enthalten nur einen Wert, und ich möchte es vom Elternteil erhalten. Ich habe viele der hier geposteten Antworten auf den Stack-Overflow ausprobiert, aber keiner von ihnen funktioniert für mich. Unten habe ich das Bild angehängt, damit Sie sehen können, wie der Iframe in der Seite enthalten ist. Ich möchte den Wert im roten Rahmen bekommen, damit ich ihn später verwenden kann.Holen Sie sich InnerText von Iframe von Eltern
Der Code:
var graphUrls = tmpSource.getGetFeatureInfoUrl(
graphCoor, viewResolution, 'EPSG:3857', {'INFO_FORMAT': 'text/html'});
var frr = document.createElement("iframe");
frr.onload = function(){
var jjj = $("iframe body a").text()
var kkk = $("iframe body #ras-val").text()
console.log("jjj ", jjj)
console.log("kkk ", kkk)
};
frr.id = sourceParams.year + "-" + sourceParams.month + "-" + sourceParams.day;
frr.src = graphUrls
document.body.appendChild(frr);
haben Sie versucht mit jQuery? $ ("iframe body a"). text()? – Kathara
oder $ ("iframe body # ras-val"). Text()? – Kathara
Hey, Ihre Lösung gibt nur eine leere Zeichenfolge zurück. Ich habe auch versucht $ ("#" + String (frames [i] .id)). Contents(). Find ("a"). Dies gibt ein Objekt zurück, das innerText-Wert irgendwo tief unten gespeichert hat, aber nur in Edge, in Chrome ist diese Zeichenfolge auch leer? Ist es möglich, dass meine iframes noch nicht geladen sind, wenn ich versuche, auf den Wert zuzugreifen? Warum dann anderes Verhalten in verschiedenen Browsern? Wie würde ich warten, bis iframe geladen ist, wenn dies der Fall ist? –