2009-07-13 3 views
2

Несколько новых интерфейсов пользовательского интерфейса/запроса позволяют вам «привязывать» элементы пользовательского интерфейса к структурам данных. Когда данные в структуре обновляются, это изменение автоматически распространяется на элемент пользовательского интерфейса. Некоторые примеры этого включают тег [Bindable] в Adobe Flex и расширение «Bindable LINQ» для .NET.JQuery: Есть ли способ сделать привязки данных в стиле Flex?

Кто-нибудь делает это в JQuery?

ответ

0

Возможно, это не так просто сделать в прямом JavaScript. Вы должны перехватывать сеттеры для связанных свойств, что возможно сделать в этих других средах, потому что сеттеры являются частью языка как в .NET, так и ActionScript, но не являются частью самого JavaScript. И .NET, и AS3 имеют специальный синтаксис сеттера, который понимает компилятор; в JS это просто

instance.property = value // or instance[property] = value for dynamic assignment 
2

Не JQuery специфична, но MS AJAX.NET 4.0 имеет реализацию в bind vanilla JavaScript objects (POJOs) to vanilla DOM elements, включая двухсторонним связывания. Все это обусловлено an implementation of the Observer pattern на POJOs для наблюдения за объектом изменений на любой из его свойств:

var widget = { name: "widget1" }; // came from a JSON service 

Sys.Observer.addPropertyChanged(widget, showWidget); 

showWidget(widget); 

function showWidget(widget) { 
    $get('div1').innerHTML = widget.name; 
} 
0

Не то, что я знаю, просто использовать Flex, если вы не абсолютно санкционированных или требуется по какой-либо причине, чтобы использовать зависимую браузер сценарии.