Да, addEventListener (с attachEvent IE) является наиболее ненавязчивым. Чтобы получить значение текстового поля, вы просто используете свойство .value
текстового поля.
<script type="text/javascript">
window.onload = function () {
var btn = document.getElementById("btn");
if (btn.addEventListener) {
btn.addEventListener("click", btnClick, false);
} else if (btn.attachEvent) {
btn.attachEvent("onclick", btnClick);
}
};
function btnClick() {
alert(document.getElementById("percent").value);
}
</script>