gpt4 book ai didi

javascript - Firefox onkeypress 事件未传入事件参数

转载 作者:行者123 更新时间:2023-11-29 18:31:30 25 4
gpt4 key购买 nike

我有以下 textarea HTML 标记,我正在将运行时插入到 DOM 中(我只展示了它插入后的样子)并且我将 onkeypress 事件设置为触发一个内联属性。但是,在 Firefox 中,当我按下某个键使其成为焦点时,我收到“事件未定义”错误。

<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;
}

}

我查看了大量帮助,告诉我我应该期望事件对象参数可用于我放置在 onkeypress attr 中的 js 代码,但我一直收到此错误。

textarea 标签不在一对表单标签内(我在某处看到这有时会成为一个问题,但我在这里别无选择)。

我已经尝试过仅使用 e 参数的 handleEnterKey 函数,但这没有任何区别。

如果我将内联属性更改为...

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

... 我输入 handleEnterKey 并将我的 e 参数设置为 textarea 对象。为什么我没有被传递事件对象?显然,这在 IE 中使用它的全局事件对象时效果很好。

我已经无计可施了。帮帮我 Stack Overflow……你是我唯一的希望!

最佳答案

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

return handleEnterKey(event,doFunc();

应该是

return handleEnterKey(event,doFunc);

传递 event 绝对有效:DEMO

关于javascript - Firefox onkeypress 事件未传入事件参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7663569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com