Смотри в конце текста пример как использовать
text_box('Ведите любое число',15,alert,console.log,/^[\-\+]?\d+\.?\d*$/);
1) строка комментария
2) срока по умолчанию поля
3) имя функции которая должна выполнится при нажатии на кнопку да
4) имя функции которая должна выполнится при нажатии на кнопку нет
5) регулярное вырождение защита от всяких больных наголову которые к примеру решат водить шестнадцатеричные цифры или бинарные или ещё какие неважно!
Можно в принципе использовать и так если что не надо
text_box('','',alert);
или так
text_box(); ну так чисто если чтоб на окошко посмотреть
<script>
function text_box(zagolovok,param,but_yes,but_no,regul) {
input_box = document.createElement('div');
input_box.style.cssText += "position: absolute;padding: 10px;min-width: 40%;top: 40%;left: 30%;box-shadow: 3px 5px 20px 5px #888;background: #ddd;border: #888 1px solid;";
input_box.innerHTML = `
${arguments.length>0?arguments[0]:''}
<div contenteditable="true" spellcheck="true" autofocus style="min-height: 1.2em;width: 100%;overflow: auto;border: #09f 1px solid;background: #ffc;">
${arguments.length>1?arguments[1]:''}
</div>
<button style="float: right;" >Отмена</button>
<button style="float: right;" >Да</button>
`;
document.body.appendChild(input_box);
input_box.querySelector('[spellcheck]').focus();
input_box.querySelectorAll('button')[0].onclick=a=>{
document.body.removeChild(input_box);
arguments.length>3&&typeof(but_no)==="function"&&but_no(input_box.querySelector('[spellcheck]').innerText);
};
input_box.querySelectorAll('button')[1].onclick=a=>{
document.body.removeChild(input_box);
arguments.length>2&&typeof(but_yes)==="function"&&but_yes(input_box.querySelector('[spellcheck]').innerText);
};
arguments.length>4&&typeof(arguments[4])==="object"&&(
input_box.querySelectorAll('button')[1].disabled=1,
logik=a=>{
/^\n$/.test(input_box.querySelector('[spellcheck]').innerText)&&(input_box.querySelector('[spellcheck]').innerText='')
input_box.querySelectorAll('button')[1].disabled=regul.test(input_box.querySelector('[spellcheck]').innerText)?0:1;
},
input_box.querySelector('[spellcheck]').oninput=logik,
logik()
)
}
text_box('Ведите любое число',15,alert,console.log,/^[\-\+]?\d+\.?\d*$/);
</script>

⚤