Самый простой способ сделать это с помощью комбинированного поля с ограниченным набором для ввода
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Grades</title>
</head>
<body>
<form>
<table>
<tr>
<td>Combo Box</td>
<td>
<select id="combo1" name="combo1" onchange="input1.value = combo1.value">
<option value="100">A</option>
<option value="75">B</option>
<option value="50">C</option>
<option value="25">D</option>
<option value="0"">E</option>
</select>
</td>
</tr>
<tr>
<td>Input Box</td>
<td>
<input type="text" name="input1" id="input1"/>
</td>
</tr>
</table>
</form>
</body>
</html>
и далее, или, если вам действительно требуются обработчики событий, вы должны кодировать их как таковые.Вот небольшой пример, который делает то, что вы хотите:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Grades</title>
<script type="text/javascript">
function eventHandler() {
var target = document.getElementById('input1');
var value = document.getElementById('input2').value;
value = value.trim().toUpperCase();
if( value == "A" ) {
target.value = "100%";
}
else if( value == "A" ) {
target.value = "100%";
}
else if( value == "B" ) {
target.value = "75%";
}
else if( value == "C" ) {
target.value = "50%";
}
else if( value == "D" ) {
target.value = "25%";
}
else if( value == "E" ) {
target.value = "0%";
}
}
</script>
</head>
<body>
<form>
<table>
<tr>
<td>Combo Box</td>
<td><input type="text" name="input2" id="input2"
onblur="eventHandler()" onchange="eventHandler" value="A" /></td>
</tr>
<tr>
<td>Input Box</td>
<td><input type="text" name="input1" id="input1" /></td>
</tr>
</table>
</form>
</body>
</html>
Некоторые из этих вещей могут довольно быстро зависеть от браузера, поэтому обязательно проверьте документ js api для браузера, на который вы нацеливаетесь.