Hi,
I am new to Kendo and running into below issue.
I have a row with two textboxes (Phone Number & Email Address). I have a UserContactViewModel with these entries as PhNumber1 & Email1. But I need to added additional rows on button click, so I created a template which will add the Phone NUmber and email address textbox on each click for user to provide additional information.
Issue is every time I click, I am able to add the template but the UserContactViewModel will not reflect any new elements that I have added through Template. I can only see the first element that was loaded initially.
Can I get some help on how to update "UserContactViewModel" everytime I add a new row to the div. So that all existing options on the two textboxes applies to new textboxes that I have added through kendo UI template.
JS:
function addUserContact() { var template = kendo.template($("#AddUserContact").html()); // Here I am just passing the counter or no. of clicks the user made so we need that number next to variable like Email2, Email3 etc var data = [ { userCount: no. of btn click } ]; var result = kendo.render(template,data); $("#replicate").append(result); // I tried to use kendo.bind("#myviewname",userViewModel);}
UserContactViewModel:
Class UserContactViewModel { public users: knockoutObservableArray<any> = ko.obsevableArray([]); public PhNumber1: knockoutObservable<int> = ko.observable(''); public Email1: knockoutObservable<string> = ko.observable(''); public isBeingUpdated: knockoutObservable<boolean> = ko.observable<false); public isLoading: knockoutObservable<boolean> = ko.observable<false); public isEditing: knockoutObservable<boolean> = ko.observable<false); public isEditEnabled: knockoutObservable<boolean> = ko.observable<false); public isModified: knockoutObservable<boolean> = ko.observable<false); public UserContactViewModelGroup: knockoutValidationError; constructor() { let self = this; self.PhNumber1.extend({ required: { message: 'Phone Number is required', onlyIf: () => { return self.Email1 ! == '';} } }); self.userViewModelGroup = ko.validation.group([ this.phNumber1, this.Email1 ]); }}
Thanks,
AG
