【发布时间】:2018-04-27 17:23:54
【问题描述】:
我有一个我无法控制的输入元素 例如:
<input tabindex="2" onkeypress="if(NotReady_Key())return;fnKeyPressNum(this,'N',0);"onkeydown="if(NotReady_Key())return;fnKeyDownNum(this,9,0);" id="someElement"/>
在 internet explorer 8 和 9 中,我试图找到一种方法来使元素表现得就像在输入时按下了“输入”按钮一样,
没找到模拟压机的JS方式
但我在想,是否可以抓取内联方法:
onkeydown="if(NotReady_Key())return;fnKeyDownNum(this,9,0);"
从元素中,通过elementById获取元素, 并像事件实际发生一样执行它? 这是我到目前为止尝试过的(我正在使用 jquery):
//get dom element
var element = $("#someElement")[0];
//simulate the event
//insert element as "this"
(function(){
fnKeyDownNum(this,9,0);
}).call(element);
但它似乎没有按预期工作,我是不是忘记了什么? 我认为我还需要确保模拟除此之外的其他系统变量,以完全模拟“ENTER”事件。
我能做什么?
选项 2 当然是在输入端模拟真正的“ENTER”按键,但到目前为止我未能在 IE8/9 中找到这样做的方法,如果那样的话,即使使用 VBS 也可以接受任何方法一个选项。
请注意,我特别需要 IE8 和 IE9 支持。
【问题讨论】:
标签: javascript input internet-explorer-8 internet-explorer-9 keydown