When you are refreshing a page from the browser, it sends the same form data to submit. The viewstate of the page is also sent. That's why you preserve this button disabled. You can use rerender attribute of the apex:commandButton and specify id of the parent form to exclude resubmitting form with a viewstate: <apex:page standardStylesheets="true&...


In your getEduRecords() method you only query the records if you haven't yet. This means that the rerender works with the old data. Remove the if (eduRecords == null) check and it should work fine.


I think the problem is that you are reassigning the variable, and overwritting the actual tracked object. You can both: this.advisor.Name = 'Bossman'; //As fas as it is @tracked Or: this.advisor = {...pAdv}; Or: this.advisor = Object.assign({},pAdv); For not tracked variable or reassignations you need to use {} syntax or Object.assign. If you don't the ...


You dont need the @track annotation since you are reassigning the entire variable. Can you try these 2 things? Deep clone the object (just as an attempt) and before assignin the value, assign it to undefined like: this.advisor = undefined; this.advisor = JSON.parse(JSON.strinify(pAdv));


Probably it happened as you set all the html in the outputtext. It indeed set to not escape html tags, but I think with too complex html it won't work. You should img tag like: <img src="specific-url"/> if you need to generated dynamic url, then in the controller generat only the url, not the whole html: <img src="{!myURLString}"...

Only top voted, non community-wiki answers of a minimum length are eligible