我如何在不影响功能的先前实例输出的情况下重复功能的输出?
在某些情况下:
我正在创建一个文本编辑器,并创建了一个“链接生成器”,该链接创建了一个相对的href链接。
但是,当我将链接附加到文本区域内容时,该链接对于第一个实例将完美显示。但是,如果我重复该功能以添加另一个相对链接,则会删除包含附加的第一个链接的html。
我尝试将链接的文本输出更改为getElementByClassName,因为我认为ID仅最好用于唯一的函数,而无需重复。通过使用该类,它可以更广泛地使用。
例如一些代码
lag(hst1.starttime) over (partition by hst1.QUERYID order by hst1.starttime)
<textarea name="textarea" class="txtarea" id="textarea" style="display: none; font-family: Arial;"></textarea>
<iframe name="editor" id="editor" style="width:824; height: 400; font-family: Arial;"></iframe>
function bcmllink() {
var logicalid = document.getElementById("logicalid");
var txtinput = document.getElementById("txtinput");
var txtOutput = document.getElementById("txtOutput");
var name = logicalid.value;
txtOutput.value = "\x3ca href\x3d\x22\x23\x22 bcmltype\x3d\x22link\x22 logicalid\x3d\x22" + logicalid.value + "\x22\x3e" + txtinput.value + "\x3c\x2fa\x3e"
}
function appendtotext() {
var myTextArea = $('.txtarea');
myTextArea.val(editor.document.getElementsByTagName('body')[0].innerHTML = editor.document.getElementsByTagName('body')[0].
textContent + txtOutput.value + " ")
}
答案 0 :(得分:0)
也许您应该考虑使用列表而不是文本区域。我目前正在使用此消息创建一个chatapp,并且在我收到新消息时不会删除以前的消息。
答案 1 :(得分:0)
您已经在导入jquery。为什么不利用其4
函数呢?
4
请注意,您不必担心格式化HTML或转义字符。
如果您想追加到先前填充的文本区域:您可以执行以下操作:
12
答案 2 :(得分:0)
我设法找到了想要的答案:
function appendtotext() {
var myTextArea = $('.txtarea');myTextArea.val(editor.document.getElementsByTagName('body')[0].innerHTML = editor.document.getElementsByTagName('body')[0].
innerHTML + txtOutput.value + " ")}
问题是我以前在最后一行(innerHTML现在位于其中)使用textContent。这意味着在使用该函数的每个实例时,它将删除周围的html标签并仅放置文本内容。
有关更多信息,请参见此处: https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent