Обычно вы помещаете теги сценария в заголовок вашей страницы (или в некоторых случаях в тело), однако, учитывая, что они не присутствуют при загрузке страницы, я боюсь, что это может быть проблемой порядка выполнения.
Выглядит так, как будто выпытаясь динамически создавать страницы, вы можете достичь этого без необходимости создавать всю структуру страницы, а вместо этого просто динамически создавать содержимое (тело).Кроме того, создается впечатление, что вы пытаетесь сохранить содержимое тела и выполнить «добавление».
Попробуйте выполнить следующую настройку:
index.html
<html>
<head>
<script src="./js/main.js"></script>
</head>
<body>
<input id="downloadScan" type="button" onclick="appendDiv('Some text not in a div');" class="btn btn-default" value="Print">
<input id="downloadScan2" type="button" onclick="appendDiv('<div>Some content in a div</div>');" class="btn btn-default" value="Print">
</body>
</html>
main.js
function appendDiv(content) {
document.body.innerHTML = document.body.innerHTML + content;
}
https://jsfiddle.net/acvgout7/