Javascript KnockoutJS,如何向oberservable添加$symbol
我对KnockoutJS相当陌生,所以这可能不是最具建设性的问题,但我似乎无法独自解决这个问题 如何在可观察对象前面添加$符号?我尝试了一个计算的observable,但无法让它工作,因为我的数据正在从服务器中提取Javascript KnockoutJS,如何向oberservable添加$symbol,javascript,knockout.js,Javascript,Knockout.js,我对KnockoutJS相当陌生,所以这可能不是最具建设性的问题,但我似乎无法独自解决这个问题 如何在可观察对象前面添加$符号?我尝试了一个计算的observable,但无法让它工作,因为我的数据正在从服务器中提取 $(document).ready(function () { $(function () { function viewModel(cartData) { var self = this; sel
$(document).ready(function () {
$(function () {
function viewModel(cartData) {
var self = this;
self.cartItems = ko.observableArray([]);
self.discountPercent = ko.observable();
self.grandTotal = ko.observable();
////////////////////////////////////////////////////////////////////////////////////////////////////////
self.removeCartItem = function (CartItem) {
$.ajax({
url: '@Url.Action("RemoveFromCart", "ShoppingCart", null)',
type: 'POST',
data: { 'ID': CartItem.cartItemID },
success: function (data) {
self.cartItems.remove(CartItem);
self.getCartTotal();
}
});
};
//////////////////////////////////////////////////////////////////////////////////////////////////////
self.getCartTotal = function () {
$.getJSON('@Url.Action("koGetTotal","ShoppingCart",null)', function (data) {
self.grandTotal(data.finalTotal);
console.log("getting total");
});
};
//////////////////////////////////////////////////////////////////////////////////////////////////////
self.addItemToCart = function (listingID, qty) {
$.ajax({
url: '@Url.Action("phoneAdd","ShoppingCart",null)',
type: 'POST',
data: {
'listingID': listingID,
'requestedQty': qty
},
success: function (data) {
alert(data.status);
}
});
};
self.loadCartData = function () {
$.getJSON('@Url.Action("koShoppingCartItems","ShoppingCart",null)', function (data) {
$.each(data, function () {
self.discountPercent(data.length);
self.cartItems.push({
itemTitle: ko.observable(this.itemTitle),
cartItemID: ko.observable(this.cartItemID),
price: ko.observable(this.Price),
qty: ko.observable(this.Quantity),
displayImgPath: ko.observable(this.displayImgPath),
lineTotal: ko.observable(this.lineTotal)
});
});
});
self.getCartTotal();
}
self.loadCartData();
}
ko.applyBindings(new viewModel());
});
});
我假设你们在谈论你们推到购物车里的
商品的价格
通常,格式化是您要处理的事情:
处理程序:
ko.bindingHandlers.price = {
update: function(element, valueAccessor, allBindings) {
var symbol = allBindings.get("priceSymbol") || "$";
element.innerHTML = symbol + ko.unwrap(valueAccessor()).toFixed(2);
// Or possibly even more formatting on that value
}
};
使用它:
<span data-bind="price: price"></span>
名称
美元
英镑
“如何在可观察对象前面添加$符号?”哪个可观察对象?!价格?非常好,将其设置为具有格式的实际货币绑定,或者使用Intl
设置货币格式可能会很有用。@BenjaminGruenbaum:我想到了一个符号选项。似乎有些过分。:-)@本贾明鲁恩鲍姆:但你说服了我。:-)