2012-03-19 10 views
7

Czy poprawnie przekazać odniesienie do modelu bezpośrednio do elementu HTML?Czy poprawnie przekazać odniesienie do modelu bezpośrednio do elementu HTML?

window.car = { 
    color: "blue", 
    maxSpeed: 200 
} 
var element = $("<div>"); 
car.$element = element; 
element[0]._model = car; 

$ ("") tworzy nowy element jQuery. JQuery zawinął elementy zapisane w kluczach 0,1,2 ... więc [0] zwraca pierwszy owinięty element HTML. _model jest tylko nazwą zmiennej referencyjnej.

+0

Chyba pisownię wdowa jest źle. sprawdź swój kod. –

+0

Jak to możliwe, że model MVC odwzorowuje javascript? Czy model nie jest po stronie serwera? –

+0

Starałem się mieć jasny pomysł. Pochodzenie modelu jest nieistotne. Jest to skrypt po stronie klienta. –

Odpowiedz

6

Użyj do tego celu jQuery's data() method. Dodawanie nowych właściwości bezpośrednio do węzłów DOM może napotkać problemy i jest uważane za szkodliwe.

1

może można dołączyć obiekt do atrybutu data-model zamiast mocowania go bezpośrednio jako właściwość węzła DOM (może to być destrukcyjne), tylko przy użyciu

$(element[0]).data('model', car); 
Powiązane problemy