OnChange事件未触发

时间:2014-08-18 07:24:21

标签: javascript

我试图通过在键盘上附加以下功能来实现在用户类型时转换为大写。

function ChangeCharCase(evt,obj,upper)

{
    if(obj.value != obj.value.toUpperCase()) 
                obj.value = obj.value.toUpperCase();
    return true;
}

这似乎工作正常,直到我将on change事件附加到输入文本,并且想通了,在IE 11和chrome上根本没有触发on change事件。在Firefox上,似乎没问题。

您可以在这里查看案例。

http://jsfiddle.net/zt8oqaw5/4/

您会看到,onchange事件永远不会在上述浏览器的第一个输入文本上触发。

有人知道为什么吗?

如何正确实现字符大小写转换? 我不能在这里设置CSS,因为我确实希望实际更改值,而不仅仅是显示。

2 个答案:

答案 0 :(得分:0)

我个人使用onkeyup或onblur而不是onchange用于文本框。也许你可以尝试一下。

答案 1 :(得分:-1)

@Update 这是一个将军definition

“当选择,检查状态或元素内容发生变化时发生。在某些情况下,只有在元素失去焦点时才会发生。”