0

ID gdtxtPayingamount を持つテキスト ボックスを持つ Gridview があります。textchanged イベントを使用しました。

通常の場合、正常に動作します。

しかし、テキストボックスでのみ数字をチェックするためにjavascript関数を使用しました.Javascriptは正常に機能し、文字列が入力されるとアラートを表示します.問題は、数字が入力されたときにtextchangedイベントが発生しないことです

Javascriptは以下の通り

function CheckNumbers(objRef)
{        
    if(isNaN(objRef.value))
    {
        alert('Enter number only');
        objRef.value="";
        return false;
    }
    else
    {
        return true;
    }

}

グリッドビューのrowcreatedイベントでこのjavascriptを呼び出しました

protected void gdMainDetails_RowCreated(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {

            TextBox txt = (TextBox)e.Row.FindControl("gdtxtPayingAmount");
            txt.Attributes.Add("onkeyup", "return CheckNumbers(" + txt.ClientID + ")");

    }
}

Javascript は正常に動作し、文字列が入力されるとアラートが表示されます。問題は、数値が入力されたときに textchange イベントが発生しないことです。

4

1 に答える 1

0

JS 関数で isNaN(objRef.value) == false の場合に true を返す

于 2012-04-16T06:54:06.653 に答える