Vanilla Javascript中的自动结束html标记

Vanilla Javascript中的自动结束html标记,javascript,html,Javascript,Html,用户输入一个标记(如),JavaScript应该结束它()。 对于像这样的HTML标记,它也不应该这样做 我尝试了str.repeat,但结果并不像预期的那样。 这就是我尝试过的: 函数inputExtArea(){ 让InputExtArea=document.getElementById('InputExtArea'); InputExtArea.value=InputExtArea.value.重复(2); } 这是我的尝试,通过一些工作,你应该会得到更好的东西 修正了一些错误 功能检

用户输入一个标记(如
),JavaScript应该结束它(
)。 对于像
这样的HTML标记,它也不应该这样做

我尝试了
str.repeat
,但结果并不像预期的那样。 这就是我尝试过的:

函数inputExtArea(){
让InputExtArea=document.getElementById('InputExtArea');
InputExtArea.value=InputExtArea.value.重复(2);
}

这是我的尝试,通过一些工作,你应该会得到更好的东西

修正了一些错误

功能检查按键(elem、evt){
var txtBef=elem.value.slice(0,elem.selectionEnd);
var txtAft=elem.value.slice(elem.selectionEnd,elem.value.lenth);
var lastString=txtBef
.replace(/\s+/g,“”)/*将多个空格替换为一个空格*/
.拆分(“”);
lastString=lastString[lastString.length-1];
如果(evt.key==“>”){

如果(lastString.includes)(“这是我的尝试,通过一些工作,您应该会得到更好的结果

修正了一些错误

功能检查按键(elem、evt){
var txtBef=elem.value.slice(0,elem.selectionEnd);
var txtAft=elem.value.slice(elem.selectionEnd,elem.value.lenth);
var lastString=txtBef
.replace(/\s+/g,“”)/*将多个空格替换为一个空格*/
.拆分(“”);
lastString=lastString[lastString.length-1];
如果(evt.key==“>”){


if(lastString.includes)(“我不知道你的动机,我也不想对此提出质疑,但我仍然想告诉你,我无法忍受编辑器为我自动关闭标签。因此,如果我可以给出建议,至少可以选择关闭它。:)
repeat
是一种字符串方法,您试图在文本区域的上下文中调用该方法。点击F12查看代码中发生了什么…
textarea.value
没有innerHTML。这不是一种很好的实现方法。如果我在其中键入任何内容以及标记,它也会重复该文本。innerHTML不是在DOM加载后更新。我不知道您想用它做什么-但是如果您想在用户每次按键时重复该值,则需要修改您的代码,如:
document.getElementById('InputExtArea')。value=InputExtArea。重复(2)
因为
inputtextarea
已经针对值编辑了,所以在我写这篇文章后,您更改了问题,现在您需要再次访问该值……我不是说“将整个代码更改为此”我的意思是,将此合并到您的代码中我不知道您的动机,我也不想对此提出质疑,但我仍然想告诉您,我无法忍受自动关闭标签的编辑器。因此,如果我可以给出建议,至少可以选择将其关闭。:)
repeat
是一种字符串方法,您试图在文本区域的上下文中调用该方法。点击F12查看代码中发生了什么…
textarea.value
没有innerHTML。这不是一种很好的实现方法。如果我在其中键入任何内容以及标记,它也会重复该文本。innerHTML不是在DOM加载后更新。我不知道您想用它做什么-但是如果您想在用户每次按键时重复该值,则需要修改您的代码,如:
document.getElementById('InputExtArea')。value=InputExtArea。重复(2)
因为
inputtextarea
已经针对值编辑了,所以在我写这篇文章后,您更改了问题,现在您需要再次访问该值……我不是说“将整个代码更改为此”我的意思是,把它合并到你的代码中是的,我刚看到,我给了你一个基本的代码,你可以编辑它来满足你的需要。这个文本区域没有太多的空间和多个标记。所以,我想这可能是很多标记的问题…也许如果你键入一个结束标记?是的,我刚刚看到,我给你一个基本的代码,您可以编辑它以满足您的需要。此文本区域内部空间太大,并且没有多个标记。因此,我认为这可能是很多标记的问题…如果您键入一个结束标记,可能会出现问题?