gpt4 book ai didi

javascript - 覆盖嵌入在 html 元素中的现有 onkeydown

转载 作者:行者123 更新时间:2023-11-27 23:50:40 25 4
gpt4 key购买 nike

在html元素中调用onkeydown函数:

"<"input title="输入值"onkeydown="return RadWindowprompt_detectenter('{0}', event, this);"type="text"class="rwDialogInput"value="{2}""/>"

但我需要用我的 document.onkeydown 函数覆盖它

    document.addEventListener('keydown', captureEnter, true);

function captureEnter(evt) {

evt = evt || window.event;
if (evt) {
ele_type = evt.srcElement.getAttribute("id");
if (!(ele_type == $("[id$='AddNewLink']") || ele_type == $("[id$='Add_New']") || ele_type == $("[id$='AddNewImage']"))) {
ele_type = null;
return;
}

}

};

如何让我的函数运行而不是执行嵌入的 html onkeydown?

最佳答案

如果您不想执行 onkeydown 处理程序,我认为您可以停止事件的传播

document.addEventListener('keydown', captureEnter, true);

function captureEnter(evt) {
snippet.log('captureEnter')
evt.stopPropagation()
};

function RadWindowprompt_detectenter() {
snippet.log('RadWindowprompt_detectenter')
}
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

<input title="Enter Value" onkeydown="return RadWindowprompt_detectenter('{0}', event, this);" type="text" class="rwDialogInput" value="{2}"/>

<小时/>

另一种方法可能是删除 onkeydown 处理程序,例如

document.addEventListener('keydown', captureEnter, true);

function captureEnter(evt) {
snippet.log('captureEnter')
};


var els = document.querySelectorAll('input.rwDialogInput[onkeydown]');
for (var i = 0; i < els.length; i++) {
els[i].removeAttribute('onkeydown');
}

function RadWindowprompt_detectenter() {
snippet.log('RadWindowprompt_detectenter')
}
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

<input title="Enter Value" onkeydown="return RadWindowprompt_detectenter('{0}', event, this);" type="text" class="rwDialogInput" value="{2}" />

关于javascript - 覆盖嵌入在 html 元素中的现有 onkeydown,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32731109/

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