У меня есть домашнее задание, в котором я должен использовать события onFocus, onChange и onClick для каждого из трех полей формы. Каждое событие должно передавать имя поля функции. Предполагается, что функция предупреждает о том, что событие произошло, и сообщает пользователю, сколько предупреждений произошло. Я провел последнюю неделю, пытаясь найти ответ, и все, что мне удалось найти, это то, что событие onFocus НЕ должно использоваться с текстовыми полями (хотя это не меняет моего назначения). Код, который у меня есть, выглядит следующим образом:
<SCRIPT LANGUAGE="JavaScript">
<!--
var numEvents = 0;
var field1 = "";
var field2 = "";
var field3 = "";
function clickedField(fieldId) {
if (document.form1.field1.value = field1){
events=runningTotal(1);
alert("You have clicked Field 1. Alert Count = " + runningTotal(i) + ".");
}
if (document.form1.field2.value = field2){
events=runningTotal(1);
alert("You have clicked Field 2. Alert Count = " + runningTotal(i) + ".");
}
if (document.form1.field3.value = field3){
events=runningTotal(1);
alert("You have clicked Field 3. Alert Count = " + runningTotal(i) + ".");
}
}
function changedField(fieldId) {
if (document.form1.field1.value!= field1){
events=runningTotal(1);
alert("You have changed Field 1. Alert Count = " + runningTotal(i) + ".");
}
if (document.form1.field2.value!= field2){
events=runningTotal(1);
alert("You have changed Field 2. Alert Count = " + runningTotal(i) + ".");
}
if (document.form1.field3.value!= field3){
events=runningTotal(1);
alert("You have changed Field 3. Alert Count = " + runningTotal(i) + ".");
}
}
/*
function focusedField(fieldId) {
if (document.form1.field1.value = field1){
events=runningTotal(1);
alert("You have focused on Field 1. Alert Count = " + runningTotal(i) + ".");
}
else if (document.form1.field2.value = field2){
events=runningTotal(1);
alert("You have focused on Field 2. Alert Count = " + runningTotal(i) + ".");
}
else if (document.form1.field3.value = field3){
events=runningTotal(1);
alert("You have focused on Field 3. Alert Count = " + runningTotal(i) + ".");
}
}*/
function runningTotal(i){
numEvents += i;
return numEvents;
}
// -->
</SCRIPT>
Я знаю, что есть несколько ошибок, хотя и не в самом коде, потому что он не делает то, что мне нужно. Прежде чем я добавил '. Alert Count = "+ runningTotal (i) +". "" И аргумент предупреждения, которое он сообщал мне, когда я менял поле.