数値コントロールで数値を[BackSpace]キーや[Delete]キーなどで削除した場合、Valueプロパティを 0 ではなく Nullにするには?
対象製品
InputMan for .NET 1.0J Web Forms Edition
詳細
数値コントロールの値が 0 のとき、[BackSpace]キーや[Delete]キーにより、0 を削除しValueプロパティを Null にするには、次のような方法があります。
[Visual Basic]
[C#]
[Visual Basic]
------------------------
Webフォームクラス
------------------------
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not IsPostBack Then
Number1.Format.Digit = "####0"
Number1.DisplayFormat.Digit = "####0"
Number1.ClearAction = GrapeCity.Web.Input.Core.ClearModeAction.Null
Number1.Attributes.Add("onkeyup", "javascript:Number_onKeyUp();")
End If
End Sub
------------------------
クライアント側スクリプト
------------------------
<script language=javascript>
function Number_onKeyUp()
{
if(( event.keyCode == 8 || event.keyCode == 46 ) && FindIMControl("Number1").GetText() == 0 )
{
FindIMControl("Number1").Clear();
}
}
</script>
Webフォームクラス
------------------------
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not IsPostBack Then
Number1.Format.Digit = "####0"
Number1.DisplayFormat.Digit = "####0"
Number1.ClearAction = GrapeCity.Web.Input.Core.ClearModeAction.Null
Number1.Attributes.Add("onkeyup", "javascript:Number_onKeyUp();")
End If
End Sub
------------------------
クライアント側スクリプト
------------------------
<script language=javascript>
function Number_onKeyUp()
{
if(( event.keyCode == 8 || event.keyCode == 46 ) && FindIMControl("Number1").GetText() == 0 )
{
FindIMControl("Number1").Clear();
}
}
</script>
[C#]
------------------------
Webフォームクラス
------------------------
private void Page_Load(object sender, System.EventArgs e)
{
if( !IsPostBack )
{
Number1.Format.Digit = "####0";
Number1.DisplayFormat.Digit = "####0";
Number1.ClearAction = GrapeCity.Web.Input.Core.ClearModeAction.Null;
Number1.Attributes.Add("onkeyup", "javascript:Number_onKeyUp();");
}
}
------------------------
クライアント側スクリプト
------------------------
<script language=javascript>
function Number_onKeyUp()
{
if(( event.keyCode == 8 || event.keyCode == 46 ) && FindIMControl("Number1").GetText() == 0 )
{
FindIMControl("Number1").Clear();
}
}
</script>
Webフォームクラス
------------------------
private void Page_Load(object sender, System.EventArgs e)
{
if( !IsPostBack )
{
Number1.Format.Digit = "####0";
Number1.DisplayFormat.Digit = "####0";
Number1.ClearAction = GrapeCity.Web.Input.Core.ClearModeAction.Null;
Number1.Attributes.Add("onkeyup", "javascript:Number_onKeyUp();");
}
}
------------------------
クライアント側スクリプト
------------------------
<script language=javascript>
function Number_onKeyUp()
{
if(( event.keyCode == 8 || event.keyCode == 46 ) && FindIMControl("Number1").GetText() == 0 )
{
FindIMControl("Number1").Clear();
}
}
</script>
この文書は、以前は次のFAQ IDで公開されていました : 9434