Javascript 如何正确使用getElementById和innerHTML(.append())

Javascript 如何正确使用getElementById和innerHTML(.append()),javascript,html,append,innerhtml,getelementbyid,Javascript,Html,Append,Innerhtml,Getelementbyid,我面临以下问题: 我有一个用于用户输入的表单,在提交时调用函数drawmycolor()。然后,该函数会给出一个talbe,显示通过用户输入的数字生成的颜色。所有这些都在起作用,唯一的问题是,表格不是显示在网站上,而是显示在一个新窗口中。我试图通过在html部分中打开一个div元素,然后使用getElementById引用该div,然后将带有innerHTML的表放入div元素来解决这个问题。这是我的代码: function drawmycolor() { a = Number(docum

我面临以下问题:

我有一个用于用户输入的表单,在提交时调用函数drawmycolor()。然后,该函数会给出一个talbe,显示通过用户输入的数字生成的颜色。所有这些都在起作用,唯一的问题是,表格不是显示在网站上,而是显示在一个新窗口中。我试图通过在html部分中打开一个div元素,然后使用getElementById引用该div,然后将带有innerHTML的表放入div元素来解决这个问题。这是我的代码:

 function drawmycolor()
 {
 a = Number(document.color.d.value); //getting the user input from the form
 b = Number(document.color.e.value);
 c = Number(document.color.f.value);

 if (a >= 0 && a < 255 && Math.floor(a) == a &&
     b >= 0 && b < 255 && Math.floor(b) == b &&
     c >= 0 && c < 255 && Math.floor(c) == c)


    {
       mycolor = "#" + getHexadecimalValue(a) + 
        ""  + getHexadecimalValue(b) +
        ""  + getHexadecimalValue(c); 
 var div = document.getElementById('ausgabe');  //Here I am referencing the div-el.
 div.innerHTML = div.innerHTML + "...." //here i don't know how to put in the table below.
       document.write('<br><table border="1" cellspacing="1"cellpadding="1">');
       document.write('<tr><th>Hexadecimal Red</th><th>' +
       'Hexadecimal Green</th><th>' +
       'Hexadecimal Blue</th><th>' +
       'Color</th></tr>');
       document.write('<tr><td>' + getHexadecimalValue(a) + '</td><td>' + 
       getHexadecimalValue(b) + '</td><td>' + 
       getHexadecimalValue(c) +                            
       '</td><td bgcolor="mycolor"</td></tr>'); //RIGHT HERE I WANT TO SET THE COLOR
   document.write('</table>');
 }
 else
 ..

 <div id="ausgabe"><br> Blubb </div> //this is the div-element where the output is 
                                       supposed to be...
函数drawmycolor()
{
a=Number(document.color.d.value);//从表单获取用户输入
b=编号(文件颜色e值);
c=编号(文件颜色f值);
如果(a>=0&&a<255&&M.floor(a)==a&&
b>=0&&b<255&&b数学楼层(b)==b&&
c>=0&&c<255&&M.楼层(c)==c)
{
mycolor=“#”+getHexadecimalValue(a)+
“”+getHexadecimalValue(b)+
“”+getHexadecimalValue(c);
var div=document.getElementById('ausgabe');//这里我引用的是div-el。
div.innerHTML=div.innerHTML+“…”//这里我不知道如何放入下表中。
文件。写(“
”); document.write('十六进制红色'+ “十六进制绿色”+ “十六进制蓝色”+ “颜色”); 文件。写入(“”+getHexadecimalValue(a)+“”+ getHexadecimalValue(b)+''+ getHexadecimalValue(c)+
“用您在
文档中输入的字符串替换
”../
。每次调用
文档时,都要写入
。写入(“某物”)
它会将以前的内容重写为“某物”。正如昆廷所指出的,可以这样做:

 var div = document.getElementById('ausgabe'); 



div.innerHTML="Your entire table related code here";
(如果您不想要该div的先前内容,则不需要
div.innerHTML=div.innerHTML+..

或者您可以这样做(如果您想附加一个新的div):


谢谢-它成功了!实际上我以前也试过了,但我仍然有文档。在文档中写(…)符号。一旦我删除了这些符号,只像你说的那样放入表代码,它就成功了。…太棒了:)
var dNew = document.createElement('div');
dNew.innerHTML="yolur table related content here"
document.getElementById('your outer div id here').appendChild(dNew);