FineUI 官方论坛
标题:
提交NumberBox的BUG关于OnTextChanged
[打印本页]
作者:
ian
时间:
2012-5-5 20:48
标题:
提交NumberBox的BUG关于OnTextChanged
BUG:如果后台给NumberBox的text赋值为 类似 1.30 1.670 这种尾数还有0的数据的时候 则系统会自己触发 OnTextChanged 事件 。
如下代码 大大可以测试下 先选择酱油在选择其他的。。总和的数据就会变了。。
直接贴代码 前台
<ext
ageManager ID="
ageManager1" runat="server" />
<ext:Form ID="a1" runat="server" >
<Rows>
<ext:FormRow runat="server">
<Items>
<ext:NumberBox ID ="price" runat="server" Label ="单价" MaxLength="20" AutoPostBack="True" EmptyText="0.00" OnTextChanged="price_TextChanged" Text="0" ></ext:NumberBox>
<ext:NumberBox ID ="amount" runat="server" Label ="数量" MaxLength="20" EmptyText="0.00" OnTextChanged="amount_TextChanged" AutoPostBack="True" Text="1" ></ext:NumberBox>
<ext:NumberBox ID ="discount" runat="server" Label ="折扣" MaxLength="20" EmptyText="0.00" OnTextChanged="discount_TextChanged" AutoPostBack="True" Text="100" ></ext:NumberBox>
<ext:NumberBox ID ="total" runat="server" Label ="总额" MaxLength="20" EmptyText="0.00" ></ext:NumberBox>
</Items>
</ext:FormRow>
<ext:FormRow runat="server">
<Items>
<ext
ropDownList ID="d1" runat ="server" Label="商品" OnSelectedIndexChanged="d1_SelectedIndexChanged" AutoPostBack="True" >
<ext
istItem Value="13.10" Text ="酱油"/>
<ext
istItem Value="15.10" Text ="大蒜"/>
<ext
istItem Value="34.30" Text ="酒精"/>
<ext
istItem Value="39.10" Text ="棉花"/>
</ext
ropDownList>
<ext
ropDownList ID ="d2" runat="server" Label="折扣" OnSelectedIndexChanged="d2_SelectedIndexChanged" AutoPostBack="True" >
<ext
istItem Value="70" Text ="7折"/>
<ext
istItem Value="80" Text ="8折"/>
</ext
ropDownList>
</Items>
</ext:FormRow>
</Rows>
</ext:Form>
后台
protected void d1_SelectedIndexChanged(object sender, EventArgs e)
{
price.Text = d1.SelectedValue;
}
protected void d2_SelectedIndexChanged(object sender, EventArgs e)
{
discount.Text = d2.SelectedValue;
}
private decimal parse(string s)
{
decimal d;
decimal.TryParse(s, out d);
return d;
}
private void total1()
{
total.Text = Convert.ToString(parse(price.Text) * parse(amount.Text) * parse(discount.Text) / 100);
}
protected void price_TextChanged(object sender, EventArgs e)
{
total1();
}
protected void amount_TextChanged(object sender, EventArgs e)
{
total1();
}
protected void discount_TextChanged(object sender, EventArgs e)
{
total1();
}
作者:
ian
时间:
2012-5-5 20:51
当然 只要把数据先转成double 在ToString()就没事了。。
而且float 和int 类型都没问题 只针对numeric类型并且设置了小数位的
作者:
ian
时间:
2012-5-5 21:26
DropDownList又发现个BUG 如果设定了NextFocusControl 控件名 在输入的字符的时候按回车 可以忽略ForceSelection=true 直接跳转到设定的控件名内
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4