Кендо - есть ли способ узнать, не загрязнено ли поле модели?
Я понимаю, что мы можем знать, грязная ли модель.
Что-то вроде этого
$("#listview").data("kendoListView").dataSource.at(0).dirty
вернул бы истину или ложь.
Есть ли способ узнать, не загрязнено ли поле в модели?
Благодарю.
1 ответ
К сожалению, невозможно определить, какое поле является грязным, просто что сама модель грязная.
Вы можете найти способ обойти это. Я полагаю, вы можете сделать что-то вроде этого:
ПРИМЕЧАНИЕ: ЭТО НЕ ОЧЕНЬ ХОРОШИЙ СПОСОБ ДЕЙСТВИЯ, НО ЭТО БУДЕТ РАБОТАТЬ
change: function (e) {
var index = this.select().index();
var dataItem = this.dataSource.at(index);
//will create an object in the model, you can name it whatever you want
dataItem.addressIsDirty = true;
}
Затем позже вы можете сделать проверку:
var model = $("#listview").data("kendoListView").dataSource.at(0);
if(model.addressIsDirty) {
//do stuff
}
Если это поле undefined
тогда он пропустит это условное утверждение.
Это не красиво, и теперь вам, вероятно, придется отслеживать новые объекты, которые вы добавляете, но вы сможете отслеживать грязные поля.