我在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>
在ocr_on_fly
函数中,我需要自动执行onkeyup
属性的函数。通过以下代码,我得到了onkeyup
attr的值,但是我该如何执行呢?
let attr = input.getAttribute('onkeyup')
// attr = checkSIRET(this); or attr = checkSIREN(this);
预先感谢
答案 0 :(得分:5)
您可以使用dispatchEvent
来触发键盘keyboard event。
input.dispatchEvent(new KeyboardEvent('keyup'));
通过以这种方式触发事件,传递给函数的this
参数与普通keyup
事件期间的参数相匹配。
如果需要,您可以传递事件应报告的特定密钥:
input.dispatchEvent(new KeyboardEvent('keyup', {'key':'a'}));
答案 1 :(得分:2)