使用HTML DOM在新行中将元素追加到文本框中

时间:2018-10-19 05:13:14

标签: javascript html dom

假设我有文本框:-

document.getElementById("content").value+= "A";

我正在尝试通过以下方式将文本追加到此输入框:-

AAAA....

输出类似于:-

A
A
A
.
.

每次,文本都被添加到同一行中,如何使文本每次都添加到新行中?像下面这样。

@value("${spring.profiles.active:local}")
private String activeProfile;

@Bean
public HazelcastInstance hazelcastInstance() {
    if (activeProfile.equalsIgnoreCase("aws")) {
        Config config = new Config();
        GroupConfig groupConfig = new GroupConfig();
        groupConfig.setName("ec2-group");
        groupConfig.setPassword("ec2-password");
        config.setGroupConfig(groupConfig);

        JoinConfig joinConfig = config.getNetworkConfig().getJoin();
        joinConfig.getMulticastConfig().setEnabled(false);
        joinConfig.getTcpIpConfig().setEnabled(false);

        AwsConfig awsConfig = joinConfig.getAwsConfig();
        awsConfig.setEnabled(true);
        awsConfig.setSecurityGroupName("poc-hzcast-sg");
        awsConfig.setIamRole("my_ec2-poc-hz-role");
        awsConfig.setRegion("us-east-1");

        return Hazelcast.newHazelcastInstance(config);
    }
    return Hazelcast.newHazelcastInstance();
}

5 个答案:

答案 0 :(得分:1)

代替输入类型的文本,您可以使用文本区域,然后将其样式设置为类似于文本框。

<textarea name="textarea_content" id="tx_content"></textarea>

document.getElementById("tx_content").value+= "A\n";
document.getElementById("tx_content").value+= "A\n";

JSFiddle:https://jsfiddle.net/sx7t3ykc/

答案 1 :(得分:0)

输入文本框将支持一行。没有多行。那就是行为。这就是为什么您的文本显示在一行中的原因。

如果需要多行,则需要使用<textarea></textarea>元素

答案 2 :(得分:0)

input用于一行。尝试使用textarea

请参考以下代码:

<textarea type="text" name="content"  id="content">
</textarea>

和js将是这样的:

document.getElementById("content").value+= "A\n";

答案 3 :(得分:0)

我为您提供了一个示例,该示例每5秒追加一个新的“ A”字符。我使用 textarea 代替了 input 标记。

setInterval(appendNewChar, 5000)

function appendNewChar()
{
    document.getElementById("myTextArea").value += "A\n";
}
<textarea id="myTextArea"></textarea>

答案 4 :(得分:0)

正如@GuyFromChennai所说,您必须使用tag而不是,而且,写'\ n'将使换行符中断,我尝试这样做:

<textarea name="content"  id="content"></textarea>

for (let i=0; i<3; i++){
   document.getElementById("content").value+= "A\n"";
}