从文本框中获取值不会给出单行字符串?
getting value from textbox doesn't give a single line string?
这是我的代码。我正在使用 role="textbox" 并从中获取价值。但是,当我在文本框中输入多行文本时,它会以多行形式给出值。如何在一行中获取此值?
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
alert(text);
}
.textbox{
border: 1px solid;
}
<div>
<div id="txtboxLabel">Enter your five-digit zipcode</div>
<button onclick=getText()>
Get TextBox Data
</button>
<div class="textbox" role="textbox" contenteditable="true" aria-labelledby="txtboxLabel"></div>
</div>
您可以使用字符串 replaceAll()
替换所有换行符 \n
text = text.replaceAll('\n', "");
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
text = text.replaceAll('\n', "");
alert(text);
}
.textbox{
border: 1px solid;
}
<div>
<div id="txtboxLabel">Enter your five-digit zipcode</div>
<button onclick=getText()>
Get TextBox Data
</button>
<div class="textbox" role="textbox" contenteditable="true" aria-labelledby="txtboxLabel"></div>
</div>
您可以使用 String.prototype.replaceAll()
:
将文本内容中的所有 \n
(导致多行的新行字符)替换为 space 字符
function getText() {
let text = document.querySelector('[role=textbox]').innerText.replaceAll('\n',' ');
alert(text);
}
.textbox{
border: 1px solid;
}
<div>
<div id="txtboxLabel">Enter your five-digit zipcode</div>
<button onclick=getText()>
Get TextBox Data
</button>
<div class="textbox" role="textbox" contenteditable="true" aria-labelledby="txtboxLabel"></div>
</div>
理解起来很复杂,但这可以通过将行中的所有 return 替换为 space.
来达到目的
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
text = text.split("\n").join(" ");
alert(text);
}
如果你只想要第一行:
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
text = text.split("\n")[0];
alert(text);
}
这是我的代码。我正在使用 role="textbox" 并从中获取价值。但是,当我在文本框中输入多行文本时,它会以多行形式给出值。如何在一行中获取此值?
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
alert(text);
}
.textbox{
border: 1px solid;
}
<div>
<div id="txtboxLabel">Enter your five-digit zipcode</div>
<button onclick=getText()>
Get TextBox Data
</button>
<div class="textbox" role="textbox" contenteditable="true" aria-labelledby="txtboxLabel"></div>
</div>
您可以使用字符串 replaceAll()
替换所有换行符 \ntext = text.replaceAll('\n', "");
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
text = text.replaceAll('\n', "");
alert(text);
}
.textbox{
border: 1px solid;
}
<div>
<div id="txtboxLabel">Enter your five-digit zipcode</div>
<button onclick=getText()>
Get TextBox Data
</button>
<div class="textbox" role="textbox" contenteditable="true" aria-labelledby="txtboxLabel"></div>
</div>
您可以使用 String.prototype.replaceAll()
:
\n
(导致多行的新行字符)替换为 space 字符
function getText() {
let text = document.querySelector('[role=textbox]').innerText.replaceAll('\n',' ');
alert(text);
}
.textbox{
border: 1px solid;
}
<div>
<div id="txtboxLabel">Enter your five-digit zipcode</div>
<button onclick=getText()>
Get TextBox Data
</button>
<div class="textbox" role="textbox" contenteditable="true" aria-labelledby="txtboxLabel"></div>
</div>
理解起来很复杂,但这可以通过将行中的所有 return 替换为 space.
来达到目的function getText() {
let text = document.querySelector('[role=textbox]').innerText;
text = text.split("\n").join(" ");
alert(text);
}
如果你只想要第一行:
function getText() {
let text = document.querySelector('[role=textbox]').innerText;
text = text.split("\n")[0];
alert(text);
}