Ich benutze ScalaJS und möchte den Wert eines HTML input
Elements lesen.ScalaJs 0.9: HTML Eingabewert ohne jQuery
Hier ist der HTML-Code:
<input id="nodeValue" type="number" step="1" />
Und das ist der Code Scala:
object TutorialApp extends JSApp {
// ...
def addNode() = {
val nodeValue = document.getElementById("nodeValue").value.toInt
}
}
Es lässt sich nicht kompilieren, wie
[error] TutorialApp.scala:42: value value is not a member of org.scalajs.dom.raw.Element
[error] val nodeValue = document.getElementById("nodeValue").value.toInt
In der Dokumentation, kann ich finde das value
Attribut von org.scalajs.dom.raw.Element
nicht.
In der offiziellen basic tutorial verwendet es sofort zu jQuery, aber ich würde es vermeiden, da ich an einem kleinen Proof of Concept arbeite. Ich bin sicher, dass es eine Möglichkeit gibt, nur die DOM-API zu verwenden.
EDIT:
durch die Dokumentation gehen fand ich die nodeValue
Methode, die einen String zurückgibt. Es sagt aber, dass das null
für "die meisten Knotentypen" ist. Mine ist number
und in der Tat fehlschlägt zur Laufzeit und gibt null zurück. Eine andere Bearbeitung: Es gibt null
auch für eine Texteingabe zurück.
Ich fühle mich an dieser Stelle etwas verwirrt.
Dank, Pietro
Wäre es besser, den HTML-Code direkt in scalajs zu generieren? Wie bei Scalatags? – gurghet
danke, funktioniert! – pietro909