Gast: Form: Per copy & paste einen Wert überschreiben

Hallo,

ich habe auf einer Seite einen Währungsrechner und blende den aktuellen exchange-Kurs von einer externen Seite ein.

Da steht nun also der Wert 123,456 den ich mit der Maus markiere und dann in mein eigenes Feld schieben möchte (Firefox - können andere Browser das auch?)

In diesem Feld steht aber ein alter Wert, den ich ersetzen möchte. Doch der neue, mit der Maus gebrachte Wert wird an der Cursorposition eingefügt.

Habe ohne Erfolg versucht, beim Betreten des Feldes den alten Wert zu selektieren, damit er durch den neuen ersetzt wird.

onmouseover="javascript:this.select()" - selektiert nicht, auch nicht mit onmousemove.

Ich glaube, da triggert überhaupt kein Eventhändler.

Wie bekomme ich den extern gelieferten Wert da rein? Er wird mit weiteren Informationen per eingebundener Javascript-Zeile angezeigt und ich weiss nicht, wie ich auf den Wert zugreifen kann ausser diese Mäuseschieberei.

Diesen Code binde ich ein:

<p>External information from <a href="http://de.exchange-rates.org/currentRates/E/LKR">de.exchange-rates.org</a><a href="http://de.exchange-rates.org/"></a>. Please copy &amp; paste the rate to Exchnage-field above.</p>  
<script type="text/javascript"   src="http://exchange-rates.org/GetCustomContent.aspx?sid=RT000A6EV&amp;type=RatesTable&amp;stk=-04DPO66ERC" charset="utf-8">  
</script>

Gruß, Gast

  1. du könntest den Wert direkt aus dem eingebundenen JavaScript versuchen herauszubekommen (dazu müsstest du nur das Script genau analysieren) oder den Wert aus dem DOM-Element lesen, in den er durch das Script geschrieben wird, und direkt die value deines Feldes damit füllen und dir einen passenden Event suchen (zB onclick auf irgendeinen Button), wann das geschehen soll.

    copy&paste im eigenen Dokument erachte ich als einen Riesenumweg.

    1. du könntest den Wert direkt aus dem eingebundenen JavaScript versuchen herauszubekommen

      okay, ich weiss nun, dass der dritte <td> in einer Tabelle den gesuchten Wert enthält. Aber wie komm ich dran?

      HTML-Code:

      <div id=rate><script type="text/javascript" src="http://exchange-rates.org/GetCustomContent.aspx?sid=RT000A6EV&amp;type=RatesTable&amp;stk=-04DPO66ERC" charset="utf-8"></script></div>  
      <p><a href="javascript:getRate()">get rate</a></p>  
      
      

      Funktion zum Auslesen:

      function getRate() {  
        var txt = document.getElementById('rate').innerHTML;  
      alert(txt);  
        for (i=0; i<9; i++) {  
          var rate = document.getElementById("rate").childNodes[i].nodeValue;  
      alert(i+": "+rate);  
        }  
      }  
      
      

      HTML-Code der betr. Tabelle, von Javascript generiert:

      <script type="text/javascript" src="http://exchange-rates.org/GetCustomContent.aspx?sid=RT000A6EV&amp;type=RatesTable&amp;stk=-04DPO66ERC" charset="utf-8"></script><div id="div_RT000A6EV"><table border="1" bordercolor="#000000" cellpadding="2" cellspacing="0"><tbody><tr><td style="background-color: #6600CC;COLOR: #FFFFFF;FONT-WEIGHT: bold;text-align: left;" colspan="2">Euro Exchange Rates</td>  
      </tr>  
      <tr><td style="background-color: #FFFFFF;COLOR: #000000;">Sri Lanka Rupee (LKR)</td>  
      <td style="background-color: #FFFFFF;COLOR: #000000; text-align: right;">168.4638</td>  
      </tr>  
      <tr><td style="background-color: #FFFFFF;COLOR: #000000;" colspan="2">Rates as of 10/19/2012</td>  
      </tr>  
      </tbody></table>  
      </div>
      

      Ich brauche also den Wert 168.4638 - alert in der Funktion getRate liefert diese drei Infos nacheinander:
      0: null
      1: null
      2:
      und bricht dann ab.

      Wie greife ich den gewünschten Wert?

      Gast

      1. das Javascript erzeugt ein div, dessen ID ich kenne: div_RT000A6EV

        Die Lösung ist einfach:
        alert(document.getElementById('div_RT000A6EV').getElementsByTagName('td')[2].innerHTML);

        Gast