|
ASp.net文本计算,文本框数字输入检测,文本框的TextChanged事件,同时在属性的Auto Post Back设置为True
复制代码 代码如下: protected void txtQty_TextChanged(object sender, EventArgs e) { checkForm(); } //检验文本信息是否合法,如果合法则开始计算 protected void checkForm() { try { if (!IsNumberic(txtQty.Text) && txtQty.Text != "") { checkbool = false; Response.Write("<script>alert('数量只能为数字,请输入数字信息,谢谢合作!')</script>"); txtQty.Text = ""; txtQty.Focus(); } else if (txtQty.Text != "") { Qty = int.Parse(txtQty.Text); } if (!IsNumberic(txtVat.Text) && txtVat.Text != "") { Response.Write("<script>alert('税额只能是数字,请输入数字信息,谢谢合作!')</script>"); checkbool = false; txtVat.Text = ""; txtVat.Focus(); } else if (txtVat.Text != "") { Vat = Double.Parse(txtVat.Text); } if (!IsNumberic(txtUnitPrice.Text) && txtUnitPrice.Text != "") { Response.Write("<script>alert('价格只能是数字,请输入数字信息,谢谢合作!')</script>"); checkbool = false; txtUnitPrice.Text = ""; txtUnitPrice.Focus(); } else if (txtUnitPrice.Text != "") { UnitPrice = Double.Parse(txtUnitPrice.Text); } if (checkbool == true) { if (Vat != 0 && ExVatAmount != 0) { AmountVat = ExVatAmount / (1 - Vat / 100); txtAmountVat.Text = AmountVat.ToString(); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } } /// <summary> /// 名称:IsNumberic /// 功能:判断输入的是否是数字 /// 参数:string oText:源文本 /// 返回值: bool true:是 false:否 /// </summary> public bool IsNumberic(string oText) { try { //从字符串到双精度值的转换,字符串转换为Double,如果成功则返回为真,否则返回为假。 Double var1 = Convert.ToDouble(oText); return true; } catch { return false; } } }
|
|