Javascript Enter键验证可编辑的内容
我有一个标题,用户可以修改感谢contenteditable。 我希望当用户按下enter键时,这会验证标题,而不是传递一行Javascript Enter键验证可编辑的内容,javascript,html,css,Javascript,Html,Css,我有一个标题,用户可以修改感谢contenteditable。 我希望当用户按下enter键时,这会验证标题,而不是传递一行 <div class="panel-participants-title" *ngIf="thread.title !== '' "> <div class="panel-title" contenteditable="true"> {{thread.title.substring(1)}}
<div class="panel-participants-title"
*ngIf="thread.title !== '' ">
<div class="panel-title"
contenteditable="true">
{{thread.title.substring(1)}}
</div>
</div>
.panel-participants-title:hover > *[contenteditable="true"] {
background: #989898;
}
.panel-participants-title > *[contenteditable="true"] {
outline: 0;
}
onKeyPress=“if(event.keyCode==13)validerForm();”
及
函数validerForm(){
document.getElementById(“formulaire”).submit();
}
通常这就是你想要做的。基本上,当按13键(回车键)并按下时,它将启动一个验证表单的功能。这里是小提琴的一个工作示例,以防它关闭:)
document.querySelector('#id1').addEventListener('keypress',函数(e){
var key=e.which | e.keyCode;
如果(键===13){//13为enter
var text=document.getElementById(“id1”).value;
if(文本包括(“w”)){
警报(“Omg,字符串包含W,请重试”);
}否则{
document.getElementById(“id1”).blur();
}
}
});代码>
输入字段
您是否有代码显示您尝试过的内容?什么时候按回车键?添加一个事件监听器,按下键,检查是否输入,然后防止默认值,并调用函数validate@newbie我更新了postry event.preventDefault()和event.stopPropagation();然后是提交。@newbie我用你的解决方案更新了我的帖子,但它不起作用。我有一个错误:属性“submit”在类型“HTMLElement”上不存在。
尝试不使用提交按钮并键入提交?当我尝试更新2时,我有一个错误:event.submit不是一个函数。
<div class="panel-participants-title">
<div class="panel-title"
contenteditable="true"
(keypress)= "validateTitle($event)">
{{thread.title.substring(1)}}
</div>
</div>
validateTitle(event: any): void {
if(event.keyCode===13) {
document.getElementById("panel-title").submit();
}
}
validateTitle(event: any): void {
if(event.keyCode===13) {
event.preventDefault();
event.stopPropagation();
event.submit();
}
}