2013-03-02 66 views
0

我试图将两个div的内容插入到窗体中的单个输入字段中。 这是迄今为止我所拥有的,但是此刻只有在onclick发生时复制的字段是edit1 div的内容。从两个div到一个输入字段值的内容

任何帮助将不胜感激。

的JavaScript:

<script language="javascript" type="text/javascript"> 
function copyText2() { 
var output = document.getElementById("edit1","edit2").innerHTML; 
document.getElementById("user-submitted-tags").value = output; 
} 
</script> 

的HTML:

<div id="edit1">foo</div> 
<div id="edit2">bar</div> 

<form> 
<input class="usp_input" type="text" name="user-submitted-tags" id="user-submitted-tags" value=""> 

<input onClick="copyText2()" class="usp_input" type="submit" name="user-submitted-post" id="user-submitted-post" value="Submit Post"> 
</form> 

回答

1

分别获取这两个内容,然后添加它们。

var output1 = document.getElementById("edit1").innerHTML; 
var output2 = document.getElementById("edit2").innerHTML; 
document.getElementById("user-submitted-tags").value = output1 + "&nbsp;" + output2; 
+0

这几乎达到我想要的。我怎么会把两个条目之间的空格与来自edit1&edit2的值放在一起?它们似乎在文本字段中被合并为一个值。 – user1823055 2013-03-02 22:45:47

+0

尝试在它们之间添加非阻塞空间(更新后的答案)。 – SteveP 2013-03-04 13:19:12

0

你应该一个复制它们在一段时间,然后串联

function copyText2() { 
    var output = ""; 

    output += document.getElementById("edit1").innerHTML; 

    output += document.getElementById("edit2").innerHTML; 

    document.getElementById("user-submitted-tags").value = output; 
} 
1

变化

var output = document.getElementById("edit1","edit2").innerHTML; 

var output = document.getElementById("edit1").innerHTML + document.getElementById("edit2").innerHTML; 

这应该工作。

0

document.getElementById("")只使用您给它的第一个id字符串。它不接受多个ID。从Mozilla Dev docs

id is a case-sensitive string representing the unique ID of the 
element being sought. 

只要有output抢在第一个ID对应的内容,然后从第二和附加在一起。

相关问题