• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Firefox onkeypress事件没有通过事件参数

JavaScript 来源:MrGFunk 5次浏览

我有下面的textarea HTML标记,我插入一个运行时到DOM(我只显示它看起来后它插入),我设置onkeypress事件发射作为内联属性。但是,在Firefox中,当我按下某个键时,出现“未定义事件”错误。Firefox onkeypress事件没有通过事件参数

<textarea rows="3" cols="70" type="text" name="resultsRename" value="" class="redlining_textContent_Dialog_textbox" dojoType="dijit.forms.SimpleTextArea" id="labelText" propercase="false" style="width:auto;" onkeypress="return handleEnterKey(event,doFunc();"> 

function handleEnterKey(e, func) 
{ 
    //alert("hit key handler"); 
    //alert(dojo.toJson(e)); 
    var key = e.keyCode || e.which; 
    if (key == 13) 
    { 
     func(); 
     return false; 
    } 
    else 
    { 
     return true; 
    } 

} 

我已经看过吨的帮助,告诉我,我应该期待一个事件对象参数提供给JS代码我在onkeypress事件ATTR的地方,但我不断收到此错误。

textarea标签不在一对窗体标签内(我在某处看到这可能是一个问题,但我在这里没有选择)。

我已经尝试了只有e参数的handleEnterKey函数,但这没有什么区别。

如果我改变了内嵌属性…

onkeypress="return handleEnterKey(this,doFunc();" 

…我进入handleEnterKey设置为textarea的对象我的e参数。为什么我没有通过事件对象? Obvisouly这在IE中使用它的全局事件对象正常工作。

在我的智慧结束。帮助我stackoverflow …你是我唯一的希望!

===========解决方案如下:

handleEnterKey甚至不应该被调用,因为您有语法错误。

return handleEnterKey(event,doFunc(); 

应该

return handleEnterKey(event,doFunc); 

传递event肯定工程:DEMO


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)