Ottieni il valore dell'elemento
Domanda
Come posso ottenere l'opzione selezionata dell'elemento? Document.Query ("# ID") - Elemento restituisce che non ha il valore Propery Quindi non posso fare:
var val = document.query("#id").value;
.
var val = (SelectElement)(document.query("#id")).value; // - "SelectElement is class and cannot be used as an expression"
.
Come eseguire il tipo di conversione in fretta correttamente?
Soluzione 2
Solo bisogno di:
String str = document.query("#idOfSelect").value;
.
avverrà avvertimento, ma puoi ignorarlo
Altri suggerimenti
In generale, quando si tratta di qualsiasi elemento HTML, di solito interrogando prima l'elemento HTML:
InputElement myElement = document.query(#myInputElement);
.
Quindi utilizzare qualche evento per catturare il valore contenuto in quell'elemento:
int val = Math.parseInt(myElement.value);
.
Quindi, ad esempio, in HTML potrei avere un elemento di ingresso di tipo range:
<input id="mySlider" type="range" min="1000" max="10000" step="20" value="5000" />
.
In Dart, avrei afferrato il valore di questo cursore usando un evento del mouse su:
InputElement mySlider = document.query('#mySlider');
mySlider.on.mouseUp.add((e) {
int _val = Math.parseInt(mySlider.value);
document.query('#status').innerHTML = "$_val";
});
.
Modifica: in M1 , ora è possibile utilizzare solo l'operatore in fusione as
.Se il tuo HTML sembrava questo:
.
<p id="text">This is some text</p>
È possibile recuperare il testo dal tag del paragrafo facendo questo:
.String str = (query('#text') as ParagraphElement).text;
Ho usato:
var val = int.parse(query("#id").value, onError: (_) => 1);
Questo impedisce un'eccezione in caso di query ("# ID"). Il valore è null e assegna un valore predefinito (1).