alter ids for dynamic modal content to avoid name collisions

closes #308
This commit is contained in:
Felix Hamann 2019-03-03 12:18:10 +01:00
parent 4181b9b6b8
commit 1b2d980971

View File

@ -112,10 +112,23 @@
if (previousModalContent) {
previousModalContent.remove();
}
modalContent = withPrefixedInputIDs(modalContent);
modalElement.insertBefore(modalContent, null);
setupForm();
}
function withPrefixedInputIDs(modalContent) {
var idAttrs = ['id', 'for', 'data-conditional-id'];
idAttrs.forEach(function(attr) {
modalContent.querySelectorAll('[' + attr + ']').forEach(function(input) {
var value = modalElement.id + '__' + input.getAttribute(attr);
input.setAttribute(attr, value);
});
});
return modalContent;
}
function keyupHandler(event) {
if (event.key === 'Escape') {
close();