Я использую Castle Monorail & NVelocity View Engine.У меня есть следующая модель:
var sampleModel ;
jQuery(function () {
var mappings = {
'DateSent': ko.utils.dateConversionFunc()
};
sampleModel = {
dto: ko.mapping.fromJS($dto, mappings),
ReasonOtherId: $reasonOtherId,
referralReasonOptions: $reasonOptions //$reasonOptions is a Json list
};
sampleModel.showOtherReason = ko.dependentObservable(function () {
alert(this.dto.referralReason());
return this.dto.referralReason() == this.ReasonOtherId;
}, sampleModel);
ko.applyBindings(sampleModel, jQuery('#referralContainer')[0]);
}
);
выберите data-bind = "value: dto.referralReason, options: referralReasonOptions.Options, optionsText: 'DisplayName', optionsValue: 'Id'">
Еслиdto.referralReason (или $ dto) пусто, sampleModel.showOtherReason будет срабатывать один раз и сообщать Id.Странно то, что если $ dto НЕ пусто, sampleModel.showOtherReason выполняется два раза, а два предупреждения всплывают, первое предупреждение показывает «1405», что правильно, но затем запускается другое предупреждение, которое «не определено».Кто-нибудь знает, что стреляет дважды, если есть какие-либо данные?Спасибо.