0

ノックアウト モデルがあり、それを asp.net mvc view にバインドします。これが私のモデルです

function SearchListingViewModel() {
var self = this;
self.selectedBedRooms = ko.observableArray([]);
self.minPrice = ko.observable();
 self.search = function () {   
    var data = {
        Status: self.selectedStatus(),
        MinPrice: self.minPrice(),
        MaxPrice: self.maxPrice(),
        BedRooms: self.selectedBedRooms(),
        PageNumber: 0,
        PageSize : self.pageSize()
    };

    $.post("/listing/searchlistings", data)
    .done(function (json) {
        self.Listings(json.listings);
        json = json || {};
        if (json.success) {
            //Inserting commas in all listing's price --- Start

            $(json.listings).each(function () {
                var selfthis = this;
                console.log(selfthis.Price);

                selfthis.Price = "45,352,2"; // You can see i am hardcoding price here 


                console.log(selfthis.Price);
            });

            //Inserting commas in all listing's price --- End

            self.Listings(json.listings);
            self.pages(json.pages);
            self.pageCount(json.pageCount);
            if (self.Listings().length <= 0) {
                Alert.Information('No results found!');
            }
        } else if (json.errors) {
            Alert.Error(json.errors[0]);
        }
    });

}

私の見解

<div data-bind="foreach : Listings"> 
    <span data-bind="text:Price"></span>
</div>

Json データ

 {Price:555555, Commission:0, MarketingDescription:null, ListingStatusId:1, PlaceId:32, Place:null,…}

レンダリングすると、これが画面に表示されます

 555555 43434343 5454545454 4563665 343 

それ以外の

45,352,2 45,352,2 45,352,2 45,352,2 45,352,2 

何の問題?

前もって感謝します

4

2 に答える 2

0

ああ、それは私の側の問題でした、

.done(function (json) {
    self.Listings(json.listings); // here i am setting listings into observable array before editing this was the problem 
    json = json || {};

この行を削除すると、正確に機能します。

于 2013-07-16T10:37:30.120 に答える