tag:forum.selfhtml.org,2005:/selfKnoten löschen – SELFHTML-Forum2007-12-01T19:40:20Zhttps://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186859#m1186859Horst2007-12-01T17:06:12Z2007-12-01T17:06:12ZKnoten löschen<p>Hallo Ihr Lieben,</p>
<p>ich komme einfach nicht weiter, irgendwo klemmts bei mir.</p>
<p>Bitte mal Testen und in den QuellCode (ziemlich weit unten bei <!-- AJAX -->) schauen auf:<br>
<a href="http://rolfrost.de/cgi-bin/words_test.cgi" rel="nofollow noopener noreferrer">http://rolfrost.de/cgi-bin/words_test.cgi</a></p>
<p>Nehme ich den Suchbegriff "Stall" kommt ein Ergebnis, was auch dabei bleibt, sofern ich erneut [Dokumente finden] klicke.</p>
<p>Nehme ich jedoch den Suchbegriff "Kaffee" kommen anfangs genau 7 Ergebnisseiten, ein Klick auf [Dokumente finden] reduziert diese Liste sukzessive, anstatt die ganze Liste zu löschen und neu aufzubauen.</p>
<p>Und beim Wechsel zwischen den Suchbegriffen passieren auch diese unschönen Dinge.</p>
<p>Wo ist der Fehler, bitte mal um Hilfestellung.</p>
<p>Viele Grüße,<br>
Hotte</p>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186860#m1186860Felix RiestererFelix.Riesterer@gmx.nethttp://www.felix-riesterer.de/2007-12-01T17:11:26Z2007-12-01T17:11:26Zalle Kind-Knoten löschen<p>Lieber Horst,</p>
<p>meinst Du diesen Code hier?</p>
<pre><code class="block language-javascript"><span class="token keyword">function</span> <span class="token function">killTheKids</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token comment">// Liste erstmal leermachen </span>
<span class="token keyword">var</span> anz <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">"Liste"</span><span class="token punctuation">)</span><span class="token punctuation">.</span>childNodes<span class="token punctuation">.</span>length<span class="token punctuation">;</span>
<span class="token keyword">for</span><span class="token punctuation">(</span><span class="token keyword">var</span> m <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> m <span class="token operator"><</span> anz<span class="token punctuation">;</span> m<span class="token operator">++</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token keyword">var</span> Knoten <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementsByTagName</span><span class="token punctuation">(</span><span class="token string">"ul"</span><span class="token punctuation">)</span><span class="token punctuation">[</span>m<span class="token punctuation">]</span><span class="token punctuation">.</span>firstChild<span class="token punctuation">;</span>
document<span class="token punctuation">.</span><span class="token function">getElementsByTagName</span><span class="token punctuation">(</span><span class="token string">"ul"</span><span class="token punctuation">)</span><span class="token punctuation">[</span>m<span class="token punctuation">]</span><span class="token punctuation">.</span><span class="token function">removeChild</span><span class="token punctuation">(</span>Knoten<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
</code></pre>
<p>Ich mache das anders:</p>
<pre><code class="block language-javascript"><span class="token keyword">function</span> <span class="token function">removeAllChildNodes</span><span class="token punctuation">(</span><span class="token parameter">element</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">while</span> <span class="token punctuation">(</span>element<span class="token punctuation">.</span>childNodes<span class="token punctuation">.</span>length <span class="token operator">></span> <span class="token number">0</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
element<span class="token punctuation">.</span><span class="token function">removeChild</span><span class="token punctuation">(</span>element<span class="token punctuation">.</span>lastChild<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
</code></pre>
<p>Liebe Grüße aus <a href="http://www.ellwangen.de/" rel="nofollow noopener noreferrer">Ellwangen</a>,</p>
<p>Felix Riesterer.</p>
<div class="signature">-- <br>
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
</div>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186866#m1186866Horst2007-12-01T17:19:48Z2007-12-01T17:19:48Zalle Kind-Knoten löschen<p>Lieber Felix,</p>
<blockquote>
<pre><code class="block language-javascript"></code></pre>
</blockquote>
<p>function removeAllChildNodes(element) {</p>
<blockquote>
<p>while (element.childNodes.length > 0) {<br>
element.removeChild(element.lastChild);<br>
}<br>
}</p>
</blockquote>
<pre><code class="block">
Jetzt sei mal noch so gut und erklär einen alten Mann, was die Variable element beinhaltet ;-)
Viele Grüße,
Horst Haselhuhn
</code></pre>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186861#m1186861Gernot Backgernotback@arcor.de2007-12-01T18:33:16Z2007-12-01T18:33:16Zalle Kind-Knoten löschen<p>Hallo Felix,</p>
<p>warum nicht gleich so?</p>
<pre><code class="block language-javascript">
<span class="token keyword">function</span> <span class="token function">removeAllChildNodes</span><span class="token punctuation">(</span><span class="token parameter">element</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">with</span><span class="token punctuation">(</span>element<span class="token punctuation">)</span> <span class="token keyword">while</span><span class="token punctuation">(</span>firstChild<span class="token punctuation">)</span> <span class="token function">removeChild</span><span class="token punctuation">(</span>firstChild<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
</code></pre>
<p>Gruß Gernot</p>
<div class="signature">-- <br>
<a href="http://community.de.selfhtml.org/my/visitenkarten/view.php?key=46" rel="nofollow noopener noreferrer">super me</a>
</div>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186862#m1186862Felix RiestererFelix.Riesterer@gmx.nethttp://www.felix-riesterer.de/2007-12-01T18:47:25Z2007-12-01T18:47:25Zalle Kind-Knoten löschen<p>Lieber Gernot,</p>
<blockquote>
<p>warum nicht gleich so?</p>
</blockquote>
<p>naja, das geht zwar auch, ist aber genau betrachtet kein echter Zweizeiler, sondern in Wirklichkeit (nach meiner Schreibweise) ein Vierzeiler. Und ich finde auch, dass mein Code für einen JS-Autor, der erst noch Erfahrung sammelt, leichter zu begreifen und anzupassen ist.</p>
<p>Liebe Grüße aus <a href="http://www.ellwangen.de/" rel="nofollow noopener noreferrer">Ellwangen</a>,</p>
<p>Felix Riesterer.</p>
<div class="signature">-- <br>
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
</div>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186864#m1186864Gernot Backgernotback@arcor.de2007-12-01T19:01:41Z2007-12-01T19:01:41Zalle Kind-Knoten löschen<p>Hallo Felix,</p>
<p>eigentlich finde ich meinen Code ziemlich sprechend, wenn er auch für den Rechner nicht unbedingt so performant sein mag:</p>
<p>Tu dem Element Folgendes an: Entferne sein erstes/nächstes Kind, solange es ein erstes/nächstes Kind hat.</p>
<p>Oder auch: Herodes war ein Weichei dagegen! ;-)</p>
<p>Gruß Gernot</p>
<div class="signature">-- <br>
<a href="http://community.de.selfhtml.org/my/visitenkarten/view.php?key=46" rel="nofollow noopener noreferrer">super me</a>
</div>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186863#m1186863Horst2007-12-01T19:29:31Z2007-12-01T19:29:31Zalle Kind-Knoten löschen<p>Hallo Felix & Gernot,</p>
<blockquote>
<blockquote>
<p>warum nicht gleich so?</p>
</blockquote>
</blockquote>
<blockquote>
<p>naja, das geht zwar auch, ist aber genau betrachtet kein echter Zweizeiler, sondern in Wirklichkeit (nach meiner Schreibweise) ein Vierzeiler. Und ich finde auch, dass mein Code für einen JS-Autor, der erst noch Erfahrung sammelt, leichter zu begreifen und anzupassen ist.</p>
</blockquote>
<p>Da haste voll Recht, Felix. JS, schreib ich tatsächlich nicht so oft und die Suchmaske auf mein Stichwortverzeichnis ist meine erste Ajax-Anwendung mit Content-type: text/xml (bisher text/html).</p>
<p>Also, mit XML aus einer DB wieder HTML zu machen, das war schon ein Kick heute, gut dass es geregnet hat, so hatte ich den ganzen Tag Zeit ;-)</p>
<p>Viele Grüße an Alle,<br>
Horst Haselhuhn</p>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186865#m1186865Felix RiestererFelix.Riesterer@gmx.nethttp://www.felix-riesterer.de/2007-12-01T19:40:20Z2007-12-01T19:40:20Zalle Kind-Knoten löschen<p>Lieber Gernot,</p>
<blockquote>
<p>Oder auch: Herodes war ein Weichei dagegen! ;-)</p>
</blockquote>
<p>also ehrlich?!</p>
<p>Liebe Grüße aus <a href="http://www.ellwangen.de/" rel="nofollow noopener noreferrer">Ellwangen</a>,</p>
<p>Felix Riesterer.</p>
<div class="signature">-- <br>
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
</div>
https://forum.selfhtml.org/self/2007/dec/1/knoten-loeschen/1186867#m1186867Horst2007-12-01T17:48:43Z2007-12-01T17:48:43ZIch habs Danke!!!!!!<p>Lieber Felix,</p>
<blockquote>
<blockquote>
<pre><code class="block language-javascript"></code></pre>
</blockquote>
</blockquote>
<p>function removeAllChildNodes(element) {</p>
<blockquote>
<blockquote>
<p>while (element.childNodes.length > 0) {<br>
element.removeChild(element.lastChild);<br>
}<br>
}</p>
</blockquote>
</blockquote>
<pre><code class="block">
Cool, geht ab wie die Wutz aus Hohenlohe ;-)
> Jetzt sei mal noch so gut und erklär einen alten Mann, was die Variable element beinhaltet ;-)
Jaja, selber denken macht schlau:
removeAllChildNodes(document.getElementById("Liste"));
Herzlichen Dank nochemal!!
Viele Grüße,
Horst Haselhuhn
</code></pre>