SORU
13 Temmuz 2011, ÇARŞAMBA


Yakalanmamış hata "NO_MODİFİCATİON_ALLOWED_ERR" ben giriş için bağlayıcı

Bu ile başlar:

<script src="/Scripts/jquery-1.6.2.min.js" ...
<script src="/Scripts/knockout-1.2.1.debug.js" ...
<script src="/Scripts/knockout.mapping-latest.js" ...
<script src="/Scripts/jquery.unobtrusive-knockout.min.js" ...

Sonra sunucudan JSON düz bir nesne ve her özellik DOM eşleşen öğeleri tespit bağlama çekerim:

$.ajax({
    url: '/GetRecord',
    type: 'POST',
    dataType: 'json',
    data: JSON.stringify(requestObject),
    contentType: 'application/json; charset=utf-8',
    success: function (data) {
        // Clear the current view model
        VM.Items.length = 0;

        // only one item coming from server
        VM.Items[0] = ko.mapping.fromJS(data.BlankItem);

        // for each property found, bind it to the matching DOM element
        $.each(VM.Items[0], function (indexInArray, valueOfElement) {
            var attrName = indexInArray;

            // skip over things not an accessor (get/set property function)
            if( typeof valueOfElement == "function")
            {
                var attrValue = valueOfElement();

                // if it's a checkbox, bind the checked attribute
                var a = $('input[name="'   attrName   '"][type="checkbox"]');
                if (a.length)
                    a.dataBind({ checked: attrName });

                // if it's a radio, bind all the found radio checked attributes
                var b = $('input[name^="'   attrName   '"][type="radio"]');
                if (b.length)
                    b.dataBind({ checked: attrName });

                // if it's a text, bind the text attribute
                var c = $('input[name="'   attrName   '"][type="text"]');
                if (c.length)
                    c.dataBind({ text: attrName });  // <--- Error (use value)
            }
        });

        // Then set knockout loose
        ko.applyBindings( VM.Items[0] );
    }
});

Bir hata sonucu:

Yakalanmamış Hata: NO_MODİFİCATİON_ALLOWED_ERR: DOM İstisna 7
ko.bindingHandlers.updateknockout-1.2.1.hata ayıklama.:1577 . js ^br> invokeBindingHandlerknockout-1.2.1.hata ayıklama.:1231 . js ^br> ko.applyBindingsToNode.ko.dependentObservable.
disposeWhenNodeİsRemovedknockout-1.2.1.hata ayıklama.:1268 . js ^br> evaluateknockout-1.2.1.hata ayıklama.:927 . js ^br> ko.dependentObservableknockout-1.2.1.hata ayıklama.:965 . js ^br> ko.applyBindingsToNodeknockout-1.2.1.hata ayıklama.:1252 . js ^br> ko.applyBindingsknockout-1.2.1.hata ayıklama.:1284 . js ^br> ko.formundadır.arrayForEachknockout-1.2.1.hata ayıklama.:48 js
ko.applyBindingsknockout-1.2.1.hata ayıklama.:1283 . js ^br> $.ajax.:266 . successPropertyForm ^br> f.uzatın._Deferred.e.resolveWithjquery-1.6.2.min.:16 js
wjquery-1.6.2.min.:18 js
f.destek.ajax.f.ajaxTransport.gönder.d

Değil tüm öğeleri bağlama görmüyorum. Ayrıca, html ve açıklayıcı nakavt bağları vardır. Neyi yanlış yapıyorum?

CEVAP
14 Temmuz 2011, PERŞEMBE


OMG. Cevap tam bağlayıcı nitelik kullanmak olmuştur. ** 4 yerine 5 ** bir giriş yaptı!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BeginnersTech

    BeginnersTec

    8 NİSAN 2011
  • Epic Tutorials for iPhone, iPad and iOS

    Epic Tutoria

    18 EYLÜL 2011
  • Jason Rosolowski

    Jason Rosolo

    25 EKİM 2006