I've been trying to make a script to let users install a configuration profile on their iOS or iPadOS devices, and my code is:
function downloadProfile(profileName, configurationProfile) {
var element = document.createElement("a");
element.setAttribute("href", "data:application/x-apple-aspen-config," + encodeURIComponent(configurationProfile));
element.setAttribute("download", profileName + ".mobileconfig");
element.body.appendChild(element);
element.click();
element.body.removeChild();
}
The problem is, I keep getting an error message saying Unhandled Promise Rejection: TypeError: undefined is not an object (evaluating 'element.body.appendChild')
. Does anyone know a fix? This is not the entire code of course, it's just the part that I need help with.
The element you create does not have a property body. I assume you want to add the new element to the document, like so instead:
document.body.appendChild(element);
Check you for an example: https://www.w3schools.com/jsref/met_document_createelement.asp