切换javascript函数

时间:2011-05-23 10:51:30

标签: javascript html

我在使用switch case语句时遇到了问题,我尝试过使用if else,但没有运气,

在我的HTML中我有

<select onBlur="functionCalc()" id="art">
<option value="hours" id="hours">Hours</option>
<option value="minutes" id="mins">Minutes</option>
<option value="seconds" id="secs">Seconds</option>
</select>

与此相关的js是

// Workout if Average render time is in minutes seconds etc...
switch(art)
{
case minutes:
    document.write("Finally Friday"); return false;
    break;
case seconds:
    document.write("Finally seconds"); return false;
    break;
default:
    document.write("Finally mins"); return false;
}

2 个答案:

答案 0 :(得分:1)

很难说你给的小代码,但如果我不得不猜你没有制作字符​​串常量,那么你正在查看未使用变量的值。

// Workout if Average render time is in minutes seconds etc...
switch(art)
{
case "minutes":
    document.write("Finally Friday"); return false;
    break;
case "seconds":
    document.write("Finally seconds"); return false;
    break;
default:
    document.write("Finally mins"); return false;
}

答案 1 :(得分:0)

我们无法看到您如何设置变量art,因此我们无法在那里提出任何建议......

...除非你假设art将是一个全局变量,它引用具有相同id的表单控件的当前值(它不会)。您需要执行以下操作:<select onBlur="functionCalc(this.options[this.selectedIndex].value)"function functionCalc(art) { … }

但是,您无法使用document.write来回应某个事件。当事件触发时,文档将关闭,因此您将自动调用document.open并清除所有现有内容。而是Use DOM methods

正如@Hogan指出的那样,你可能还需要明确地让你的case语句也使用字符串。