2010-12-01 4 views
0

私はこの簡単なJavaScriptコードを持っています。スイッチは何らかの理由で実行されません。それは私の謎です!私は何の愚かなエラーを作ったのですか?JavaScriptスイッチが実行されていません

function hndlEv (e) 
{ 
    switch (document.forms[0].zcode.length) 
    { 
     case 1: document.forms[0].zcode.style.backgroundColor = "ffcc33"; break; 
     case 2: document.forms[0].zcode.style.backgroundColor = "ffff33"; break; 
     case 3: document.forms[0].zcode.style.backgroundColor = "ccff33"; break; 
     case 4: document.forms[0].zcode.style.backgroundColor = "66ff33"; break; 
     case 5: document.forms[0].zcode.style.backgroundColor = "00ff33"; break; 
    } 
} 
... 
<body onload="setfocus();" onkeypress="hndlEv(event);"> 
... 
<input type="text" name="zcode" size="6" maxlength="6" class="code" /> 
+0

それがその方法になるだろうしてみてください? –

答えて

1
function hndlEv (e) 
{ 
    switch (document.forms[0].zcode.value.length) 
    { 
     case 1: document.forms[0].zcode.style.backgroundColor = "ffcc33"; break; 
     case 2: document.forms[0].zcode.style.backgroundColor = "ffff33"; break; 
     case 3: document.forms[0].zcode.style.backgroundColor = "ccff33"; break; 
     case 4: document.forms[0].zcode.style.backgroundColor = "66ff33"; break; 
     case 5: document.forms[0].zcode.style.backgroundColor = "00ff33"; break; 

    } 
} 

この

+0

最初に(少なくとも): 'var zcode = document.forms [0] .zcode'そして...' zcode.value.length'など、あなたの変更が選択されているのを見るのは本当に難しいです。 (ポスターのために、私は選択を行い、2段階のプロセスを設定し、おそらくルックアップを使用し、スイッチは使用しません...) –

2

あなたはタイプミスがあります。 hEv()はhndlEv()と同じではありません。

+0

申し訳ありませんが、これも。しかし、入力フィールドはまだそれの色を変更しないでください。 – Bakudan

関連する問題