javascript - 如何防止通过使用 taginput 按 Enter 提交表单?
问题描述
我正在使用 Bootstrap 的标签输入库,但我忍不住在按 Enter 时提交表单。当点击输入时,光标必须保持在同一字段中。我使用了各种代码,但没有成功。
<div class="input-group">
<div class="input-group-addon">
<i class="fas fa-exchange-alt"></i>
</div>
<input type="text" name="post_tags" class="form-control form-control-md" data-
role="tagsinput" placeholder="add tags" value="" onkeydown="pulse(event)" required>
</div>
<script>
/* It didn't work*/
document.addEventListener('DOMContentLoaded', () => {
document.querySelectorAll('input[type=text]').forEach(node => node.addEventListener('keypress', e => {
if(e.keyCode == 13) {
e.preventDefault();
}
}))
});
</script>
<script>
/* It didn't work*/
function pulse(e) {
if(e.which === 13 && !e.shiftKey) {
e.preventDefault();
console.log('prevented');
return false;
}
}
</script>