用于填充textarea的输入-Javascript

用于填充textarea的输入-Javascript,javascript,jquery,html,Javascript,Jquery,Html,我正在制作一个优惠券代码页,我被一件事打动了,也许这对javascript的朋友来说很容易 所有输出链接都在一行中,我希望每个链接在不同的文本区域,并能够从文本区域复制 HTML标记 从上面的代码,它生成一行中的所有链接,看起来很难看,我需要它显示在3个不同的文本区域 像这样的Html <p>Link 1</p> <textarea name="route"> Output Link</textarea> <p>Link 2<

我正在制作一个优惠券代码页,我被一件事打动了,也许这对javascript的朋友来说很容易

所有输出链接都在一行中,我希望每个链接在不同的文本区域,并能够从文本区域复制 HTML标记

从上面的代码,它生成一行中的所有链接,看起来很难看,我需要它显示在3个不同的文本区域

像这样的Html

<p>Link 1</p>
<textarea name="route"> Output Link</textarea> 

<p>Link 2</p>
<textarea name="data"> Output Link</textarea> 

<p>Link 3</p>
<textarea name="form"> Output Link</textarea> 

您的代码存在以下问题:

document.getElementById('url_value').innerHTML = route + data + form;
您所做的是将所有链接作为一行注入DOM,它们之间没有空格

解决方案是为结果创建一个视图,然后将结果注入DOM,如下所示:

var a = document.getElementById('link')

a.onclick = function(e){
    e.preventDefault();

    var value = document.getElementById('foosite').value;
    var routeLink = "http://www.domain.com/route.php?email=" + value + ',  ';
    var dataLink = "http://www.domain.com/data.php?email=" + value + ',  ';
    var formLink = "http://www.domain.com/form.php?email=" + value;

    var routeView = '<p>Link 1</p><textarea name="route">'+routeLink+'</textarea>';
    var dataView = '<p>Link 2</p><textarea name="data">'+dataLink+'</textarea>';
    var formView = '<p>Link 3</p><textarea name="form">'+formLink+'</textarea>';

    document.getElementById('url_value').innerHTML = routeView + dataView + formView;
}

最简单的方法是将id道具添加到文本区域,然后使用document.getElementById'route'.value=route。非常感谢您的回答,但我需要它来填充文本区域,该区域已经在页面上,此处将生成链接占位符。我需要它在输入提交时使用链接进行更改!这有意义吗?@user3178681如果文本区域已经在页面上,那么您可以尝试我的更新方法。如果这不是你的意思,那么你需要澄清并更具体地说明你想要实现什么。。。我在这里发布了两种解决方案。是的,这就是我的意思和需要!超快速解决方案。非常感谢你。还有一件事,我可以转换发送链接到按钮吗?它是作为链接处理的,但是有没有可能使它成为一个带有css ID或类的按钮,以便在不影响js代码的情况下进行自定义?@user3178681如果您在internet上进行快速搜索,您会找到解决方案。这里有一个:。。。很高兴我能帮上忙,如果你发现这个答案很有用,请别忘了点击“接受”:没关系,我自己找到了解决办法。send,我不确定这是否会破坏js代码。是的,这很有帮助,再次感谢你Rayan:我现在接受你的问题,我知道我期望太高了,但是有没有快速简便的方法可以在文本区域将副本添加到剪贴板而不影响当前js
document.getElementById('url_value').innerHTML = route + data + form;
var a = document.getElementById('link')

a.onclick = function(e){
    e.preventDefault();

    var value = document.getElementById('foosite').value;
    var routeLink = "http://www.domain.com/route.php?email=" + value + ',  ';
    var dataLink = "http://www.domain.com/data.php?email=" + value + ',  ';
    var formLink = "http://www.domain.com/form.php?email=" + value;

    var routeView = '<p>Link 1</p><textarea name="route">'+routeLink+'</textarea>';
    var dataView = '<p>Link 2</p><textarea name="data">'+dataLink+'</textarea>';
    var formView = '<p>Link 3</p><textarea name="form">'+formLink+'</textarea>';

    document.getElementById('url_value').innerHTML = routeView + dataView + formView;
}
<p>Link 1</p>
<textarea id="routeValue" name="route"> Output Link</textarea> 

<p>Link 2</p>
<textarea id="dataValue" name="data"> Output Link</textarea> 

<p>Link 3</p>
<textarea id="formValue" name="form"> Output Link</textarea> 
var a = document.getElementById('link')

a.onclick = function(e){
    e.preventDefault();

    var value = document.getElementById('foosite').value;
    var routeLink = "http://www.domain.com/route.php?email=" + value + ',  ';
    var dataLink = "http://www.domain.com/data.php?email=" + value + ',  ';
    var formLink = "http://www.domain.com/form.php?email=" + value;

    document.getElementById('routeValue').innerHTML = routeLink;
    document.getElementById('dataValue').innerHTML = dataLink;
    document.getElementById('formValue').innerHTML = formLink;
}