2017-02-08 8 views
0

私は2つの入力要素を持っており、その上でKeyUpイベントを聴きたいと思っています。入力ストリームを結合する

<form> 
    First name:<br> 
    <input type="text" name="username" id="username"><br> 
    Last name:<br> 
    <input type="text" name="password" id="password"><br><br> 
    <input type="submit" value="Submit" disabled> 
</form> 

私が手に入れたいのは、両方の入力が空でない場合、送信が有効になっている必要があります。

答えて

4
import 'dart:html'; 

void main() { 
    final ids = ['username', 'password']; 
    final inputs = ids.map((id) => document.getElementById(id) as InputElement); 
    inputs.forEach((input) { 
    input.onKeyUp.listen((e) { 
     final SubmitButtonInputElement submit = 
      document.querySelector('input[type=submit]'); 
     submit.disabled = inputs.any((input) => input.value.isEmpty); 
    }); 
    }); 
} 

DartPadのテスト:https://dartpad.dartlang.org/49e61d036983e37a0d02663674d04b83

+0

まず第一に、すべての、多くのおかげ。 '(input)'の後の '{'はコールバック関数かラムダ式ですか? –

+1

'(input){...}'はすべての 'input'に適用されるラムダです。 –

関連する問題