0

私は次のようなjavascript関数を持っています

function textCounter(field, rem, maxlimit) {
        if (field.value.length > maxlimit)
            field.value = field.value.substring(0, maxlimit);
        else
            rem.value = maxlimit - field.value.length;
    }

clien IDを渡すことで、コードビハインドから呼び出そうとしています。

ClientScript.RegisterStartupScript(this.GetType(), "myScript", "textCounter('" + txtRemark.ClientID + "','" + txtRemarksRem.ClientID + "', '2000')", true);

しかし、関連するフィールドの値を取得できません。「field.value.length」のnull値を取得しています

問題を教えてください。

4

1 に答える 1

1

コントロールにはクライアントIDのみを渡しますが、コントロールには渡しません。最初にそれらのコントロールを機能させる必要があります。

そのためには、コードを次のように変更する必要があります

function textCounter(field, rem, maxlimit) {

    var fieldCtrl = document.getElementById(field);
    var remCtrl = document.getElementById(rem);

    if (fieldCtrl.value.length > maxlimit)
        fieldCtrl.value = fieldCtrl.value.substring(0, maxlimit);
    else
        remCtrl.value = maxlimit - fieldCtrl.value.length;

}
于 2012-08-01T07:32:29.633 に答える