我在HTML中输入以下内容:
<div class="form-group">
<label for="siretNumber">Numéro de SIRET</label>
<input onkeyup="checkSIRET(this);" onfocusout="ocr_on_fly(true, this, true)" onfocusin="ocr_on_fly(false, this, true);" type="text" class="form-control" id="siretNumber" value="{{ pdf['siret'] }}">
</div>
<div class="form-group">
<label for="sirenNumber">Numéro de SIREN</label>
<input onkeyup="checkSIREN(this)" onfocusout="ocr_on_fly(true, this, true)" onfocusin="ocr_on_fly(false, this, true)" type="text" class="form-control" id="sirenNumber" value="{{ pdf['siret'] }}">
</div>
Run Code Online (Sandbox Code Playgroud)
在ocr_on_fly功能上,我需要自动执行onkeyup属性的功能。通过下面的代码,我得到了onkeyupattr 的值,但是我该如何执行呢?
let attr = input.getAttribute('onkeyup')
// attr = checkSIRET(this); or attr = checkSIREN(this);
Run Code Online (Sandbox Code Playgroud)
提前致谢
您可以dispatchEvent用来触发keyup 键盘事件。
input.dispatchEvent(new KeyboardEvent('keyup'));
Run Code Online (Sandbox Code Playgroud)
通过以这种方式触发事件,this传递给函数的-参数与正常keyup事件期间的参数匹配。如果需要,您可以传递事件应报告的特定密钥:
input.dispatchEvent(new KeyboardEvent('keyup', {'key':'a'}));
Run Code Online (Sandbox Code Playgroud)