Javascript 如何从文本框在文本区域中添加值?
我有一个html页面,其中有一个文本框(键入您的文本),我需要在其中键入如下文本:Javascript 如何从文本框在文本区域中添加值?,javascript,css,html,Javascript,Css,Html,我有一个html页面,其中有一个文本框(键入您的文本),我需要在其中键入如下文本: Name=Value 用户将使用此文本框将名称-值对快速添加到该文本框正下方的列表中。假设我们在上面的文本框中键入Hello=World,然后单击add,那么在下面的列表中,它应该显示为 Hello=World 如果我们在同一个文本框中再次键入ABC=PQR,那么在下面的列表中,它应该显示为这样,这意味着它应该继续在其原始条目下方添加新的名称-值对 Hello=World ABC=PQR 但是如果语法不正确
Name=Value
用户将使用此文本框将名称-值对快速添加到该文本框正下方的列表中。假设我们在上面的文本框中键入Hello=World
,然后单击add,那么在下面的列表中,它应该显示为
Hello=World
如果我们在同一个文本框中再次键入ABC=PQR
,那么在下面的列表中,它应该显示为这样,这意味着它应该继续在其原始条目下方添加新的名称-值对
Hello=World
ABC=PQR
但是如果语法不正确,比如它不在Name=Value对中,那么它不应该向列表中添加任何内容,而是显示一个输入格式错误的弹出窗口。名称和值只能包含字母数字字符
这是我迄今为止尝试过的功能,但我无法添加和排序,因为我无法理解如何实现此功能?我需要简单的HTML和Javascript,我不想使用任何库,因为我想保持它的简单
下面是我的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test</title>
<style type="text/css">
#my-text-box {
font-size: 18px;
height: 1.5em;
width: 585px;
}
textarea{
width:585px;
height:300px;
}
.form-section{
overflow:hidden;
width:700px;
}
.fleft{float:left}
.fright{float:left; padding-left:15px;}
.fright button{display:block; margin-bottom:10px;}
</style>
<script language="javascript" type="text/javascript">
function addtext() {
var newtext = document.form-section.my-text-box.value;
document.form-section.outputtext.value += newtext;
}
</script>
</head>
<body>
<h3>Test</h3>
<label for="pair">Type your text</label></br>
<div class="form-section">
<div class="fleft">
<input type='text' id='my-text-box' name='my-text-box' value="Name=Value" />
</div>
<div class="fright">
<button type="button" onClick="addtext();">Add</button>
</div>
</div>
</br>
</br>
</br>
<label for="pairs">Name/Value Pair List</label></br>
<div class="form-section">
<div class="fleft">
<textarea name='outputtext'>After clicking add button, it should show Name Value pair here</textarea>
</div>
<div class="fright">
<button type="button">Sort by name</button>
<button type="button">Sort by value</button>
</div>
</div>
</body>
</html>
试验
#我的文本框{
字号:18px;
高度:1.5em;
宽度:585px;
}
文本区{
宽度:585px;
高度:300px;
}
.表格组{
溢出:隐藏;
宽度:700px;
}
.fleft{float:left}
.fright{float:左;padding left:15px;}
.fright按钮{显示:块;页边距底部:10px;}
函数addtext(){
var newtext=document.form-section.my-text-box.value;
document.form-section.outputtext.value+=newtext;
}
试验
键入文本
添加
名称/值对列表
单击“添加”按钮后,应在此处显示名称-值对
按名称排序
按值排序
你忘了发布在你的问题和小提琴中都不起作用的JavaScript。而你的JavaScript是…?只是更新了一些坏东西。
document.getElementById('add').onclick = addtext;
function addtext() {
var nameValue = document.getElementById('my-text-box').value;
if (/^([a-zA-Z0-9]+=[a-zA-Z0-9]+)$/.test(nameValue))
document.getElementById('output').textContent += nameValue + '\n';
else
alert('Bad value.');
}