UpdateElementOuterHtml in a List
Posted: January 24th, 2023, 5:31 pm
Ran into a few issues while testing the service in a list. The first is that in order for the service to work in a list we had to use the ContainerId. The issue with that is we did not know any service that would actually give us the ContainerId (VIEW-110000XX). We got it from inspecting the element.
Without the ContainerId, after selecting multiple books to checkout (out of descending order) the index eventually gets lost.
The logic becomes something like, "If the item in the list does not have the correct corresponding html id (i.e., one with the html and the appended '_#'), don't count it as an item in the list. Therefore, a list of 0,1,2,3,4 becomes a list with the indexes of 0,1,2,x,3,4? if the 4th item was previously updated. It still looks for the next item in the list even though the index does not exist for it anymore.
That brings me to the second issue. If there is another Html element with the same HtmlId outside of the list, the UpdateElementOuterHtml service will find that element as well whether it is before or after. if the Id is before the list it will alter which index the service will update. if it is after the list it updates when the service runs out elements with that HtmlId to find. This issue does not occur when the containerid is included in the html to replace.
We tried adding an element control to encase the HtmlControl in the list but without the containerid the result seemed to be the same.
Without the ContainerId, after selecting multiple books to checkout (out of descending order) the index eventually gets lost.
The logic becomes something like, "If the item in the list does not have the correct corresponding html id (i.e., one with the html and the appended '_#'), don't count it as an item in the list. Therefore, a list of 0,1,2,3,4 becomes a list with the indexes of 0,1,2,x,3,4? if the 4th item was previously updated. It still looks for the next item in the list even though the index does not exist for it anymore.
That brings me to the second issue. If there is another Html element with the same HtmlId outside of the list, the UpdateElementOuterHtml service will find that element as well whether it is before or after. if the Id is before the list it will alter which index the service will update. if it is after the list it updates when the service runs out elements with that HtmlId to find. This issue does not occur when the containerid is included in the html to replace.
We tried adding an element control to encase the HtmlControl in the list but without the containerid the result seemed to be the same.