HTML тип ввода текста по умолчанию тип, который устанавливается. HTML не может выполнять условные проверки, то есть причина назначения типа по умолчанию для ввода.
можно достичь, добавив тип атрибута несколько способов с помощью JavaScript, вот несколько способов
<input id="inputTag" value="myValue" />
<script>
var input = document.getElementById('inputTag');
input.type = 1 == 1 ? 'radio' : 'checkbox'
</script>
или использовать контейнер DIV для вставки ввода HTML внутри как этот
<div id="container"></div>
<script>
var div = document.getElementById('container');
div.innerHTML = 1 == 1 ? '<input type="radio" value="myValue" />' : '<input type="checkbox" value="myValue" />'
</script>
Если вы используете рендеринг на стороне сервера как jsp, вы можете выполнить условную проверку на стороне сервера и отобразить соответствующий HTML без использования javascript.