gpt4 book ai didi

c# - 如果数字不是 double 值,则无法显示最多两位小数值的 double 类型值

转载 作者:行者123 更新时间:2023-12-03 12:24:37 26 4
gpt4 key购买 nike

我有一个asp.net mvc应用程序,它使用knockout Js和Odata将数据从数据库表显示到网页。在我的模型中,我有几个 Double 类型值的条目,当我在网页上显示它们时,如果值的类型为 2.05,则它可以正常工作,但当值的类型为 2 时,就会出现问题2.5 的原因是它只显示 2 和 2.5,而我希望它分别显示两位小数,例如 2.00 和 2.50。

型号

public int Id { get; set; }
public double? Bid { get; set; }
public double? Offer { get; set; }

knockout JS

self.getverticaldata = function () {
$.ajax({
dataType: "json",
url: '/odata/CC',
data: ko.toJSON(self.products),
async: false,
success: function (data) {
self.datainput((ko.utils.arrayMap(data.value, function (canadiancrude) {
var obsCanadianCrude = {
Id: canadiancrude.Id,
Bid: ko.observable(canadiancrude.Bid),
Offer: ko.observable(canadiancrude.Offer),

}

return obsCanadianCrude;
})));
}
});
}

我可以知道更好的方法来处理这个问题并显示最多两位小数值

最佳答案

在您的绑定(bind)中,使用toFixed

data-bind="text: Bid().toFixed(2)"
data-bind="text: Offer().toFixed(2)"

这将显示 2.002.50

更新

要处理nullundefined,您可以显示空字符串或一些占位符。

data-bind="text: (typeof Bid() === 'number') ? Bid().toFixed(2) : '' "
data-bind="text: (typeof Offer() === 'number') ? Offer().toFixed(2) : 'Not Exist!' "

关于c# - 如果数字不是 double 值,则无法显示最多两位小数值的 double 类型值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24272287/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com