1

私はコードを持っています:

function check($ile,$co,$gdzie)
{
  if (document.forms.form.$co.value.length >= $ile){
    document.forms.form.$gdzie.focus();
  }
}

そして、それは機能していません。エラー(Google Chromeでチェック済み):

Uncaught TypeError: Cannot read property 'value' of undefined script.js:39
check script.js:39
onkeyup

そしてそれは私のhtmlコードです:

<p><label><?php echo TEL; ?>: <input type='text' name='tel' size='9' maxlength='9' onkeypress="keyPressNumb(event);" onKeyUp="check(9,'tel','pesel');"></label></p>
<label><?php echo PESEL; ?>:<span class='red'>*</span> <input type='text' name='pesel' size='11' maxlength="11" onKeyUp="check11();" onkeypress="keyPressNumb(event);"></label></p>
4

1 に答える 1

1

document.forms.form[$co].value.lengthドット表記を介してオブジェクトの値にアクセスするときに変数を使用できないため、 を試してください。

あなたのコードでは、js はobject にプロパティ$codocument.forms.formを期待しています。変数を介してプロパティにアクセスする場合は、括弧を使用してプロパティにアクセスする必要があります。

document.bar = "hello world";

var foo = "bar";
document.foo // undefined, because document has no property "foo"
document[foo] // "hello world"
于 2012-08-12T19:47:50.117 に答える