2016-03-22 12 views
0

たとえば、私はarrayOfCharactersの最初の要素としてテキストフィールドに入力された文字だけを解釈しようとしています。しかし、この種の作品は2文字目を入力すると機能しません。なぜこれが機能していないのか誰かが考えを持っているのだろうかと思っていました。ありがとう!テキストフィールドに入力された文字の値を変更します

let arrayOfCharacters = ["‛¯¯٭٭¯¯(▫▫)¯¯٭٭¯¯", "=^..^="] 

document.getElementById("input-area").onkeypress = function(evt) { 
    let val = this.value 
    //Transform the typed characters 
    this.value = val + arrayOfCharacters[0] 
} 
+0

。これは最新の値だけを変更するものではなく、値全体を変更します*。 –

+1

ありがとうマティアス!これは本当に私の愚かだった!テキストフィールドの現在の値に配列の値を追加して修正しました。 –

答えて

0

これは動作します:

var arrayOfCharacters = ["‛¯¯٭٭¯¯(▫▫)¯¯٭٭¯¯", "=^..^="] 
var totalValues = 0; 
document.getElementById("input-area").onkeypress = function(evt) { 
    evt.preventDefault(); 
    var val = this.value 
    //Transform the typed characters 

    // notice totalValues variable 
    this.value += arrayOfCharacters[totalValues]; 
    totalValues++; 
} 

例:あなたはその配列の最初の要素たびに等しい全体の値を設定している

https://jsfiddle.net/pn8h4rqt/

関連する問題