【发布时间】:2012-01-09 01:48:49
【问题描述】:
我有一个家庭作业,我应该在三个表单域中的每一个上使用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) + "." 和警报的参数之前,当我更改字段时它告诉我。
【问题讨论】:
-
发布所有错误也会有所帮助。
标签: javascript onclick dom-events onchange onfocus