如何在gridview中显示小数值。假如用户输入值0.5,它以0.5的形式插入到数据库中,但在将其重新插入前端时,则显示为0.50。
如何避免这种情况。
并且用户应该能够在小数点后输入5个位置。 像0.12345是可以接受的 并且不接受0.123456。
如何限制..
Plz帮助
答案 0 :(得分:0)
应用客户端javascript,将值格式化为所需的比例和精度。
答案 1 :(得分:0)
您可以在数据绑定时使用Eval
- 样式规则在String.Format
语句中进行字符串格式化:
<asp:TemplateField HeaderText="Decimal">
<ItemTemplate>
<asp:Label ID="Label1" Text='<%# Eval("DecimalValue", "{0:0.#####}") %>' runat="server" />
</ItemTemplate>
</asp:TemplateField>
此标签在小数点后最多有五位数,因此您将看到0.1,0.01,0.001等,但不 0.1000。请参阅Custom numeric format strings。
对于数据输入,我可能会使用AjaxControlToolkit在TextBox上设置掩码:
<asp:TemplateField HeaderText="Decimal">
<ItemTemplate>
<asp:Label ID="Label1" Text='<%# Eval("DecimalValue", "{0:0.#####}") %>' runat="server" />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="TextBox1" Text='<%# Bind("DecimalValue", "0.#####") %>' />
<ajaxtoolkit:MaskedEditExtender runat="server" TargetControlID="TextBox1" MaskType="Number" Mask="99999.99999" />
</EditItemTemplate>
</asp:TemplateField>
附加到文本框的蒙版编辑扩展器只接受数字(MaskType="Number"
),用零填充空掩码字符(也来自掩码类型),并且最多可接受小数点两边的六位数字(Mask="999999.99999
)。