Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将内容定向到div时出现问题(内容显示在新页面上)_Javascript_Html_Innerhtml - Fatal编程技术网

Javascript 将内容定向到div时出现问题(内容显示在新页面上)

Javascript 将内容定向到div时出现问题(内容显示在新页面上),javascript,html,innerhtml,Javascript,Html,Innerhtml,我有一个网页,我有一个div,我想重新填充。 目前,该div的内容是通过以下方式使用Javascript生成的: function foo(array){ for(i=1;i<=maxIndex;i+=1){ document.write ("<label><input type='checkbox'/>" + array[i] + "\n </label><br />") } } <d

我有一个网页,我有一个div,我想重新填充。 目前,该div的内容是通过以下方式使用Javascript生成的:

function foo(array){
    for(i=1;i<=maxIndex;i+=1){
        document.write ("<label><input type='checkbox'/>" + array[i] + "\n </label><br />")
    }
}
        <div class="bla">
        blablabla
        </div>

        <div class="myDiv" id="myDiv">
            <form name="myForm">
            <script type="text/javascript">
                foo(myArray);
            </script>
            </form>
        </div>

        <div class="blah">
             blahblahblah
             <form>
             <select onchange="updateDiv(myArray)">
                          <option value="1"> Test1 </option>
                          <option value="2"> Test2 </option>
                          <option value="3"> Test3 </option> 
             </select>
             </form>
        </div>
var astring;

function foo(array){
    for(i=1;i<array.length;i+=1){
        astring += "<label><input type='checkbox'/>" + array[i] + "\n </label><br />";
    }

function updateDiv(array){
     array.sort();
     document.getElementById('myDiv').innerHTML = astring;
    }
函数foo(数组){
因为(i=1;i你的
foo()
看起来不对劲……这对我很有用:-

<script>
function foo(array){
    for(i=0;i<array.length;i++){
        document.write ("<label><input type='checkbox'/>" + array[i] + "\n </label><br />")
    }
}
</script>

函数foo(数组){

对于(i=0;i而言,存在几个语法问题,但以下方法有效:

<html>
<head>
<script type="text/javascript">
function foo(arr){
    for(i=0; i<arr.length; i++){
        document.write ("<label><input type='checkbox'/>" + arr[i] + "\n </label><br />")
    }
}
</script>
</head>
<body>
        <div class="bla">
        blablabla
        </div>

        <div class="myDiv" id="myDiv">
            <form name="myForm">
            <script type="text/javascript">
              myArray = ["A","B","C"];
                foo(myArray);
            </script>
            </form>
        </div>

        <div class="blah">
        blahblahblah
        </div>
</body>
</html>

函数foo(arr){

对于(i=0;iOk),我终于找到了问题所在:我不应该使用那么多document.write(),它会在新页面上输出

相反,我将所有内容存储在字符串中,然后仅在最后一步中使用document.write(),方法如下:

function foo(array){
    for(i=1;i<=maxIndex;i+=1){
        document.write ("<label><input type='checkbox'/>" + array[i] + "\n </label><br />")
    }
}
        <div class="bla">
        blablabla
        </div>

        <div class="myDiv" id="myDiv">
            <form name="myForm">
            <script type="text/javascript">
                foo(myArray);
            </script>
            </form>
        </div>

        <div class="blah">
             blahblahblah
             <form>
             <select onchange="updateDiv(myArray)">
                          <option value="1"> Test1 </option>
                          <option value="2"> Test2 </option>
                          <option value="3"> Test3 </option> 
             </select>
             </form>
        </div>
var astring;

function foo(array){
    for(i=1;i<array.length;i+=1){
        astring += "<label><input type='checkbox'/>" + array[i] + "\n </label><br />";
    }

function updateDiv(array){
     array.sort();
     document.getElementById('myDiv').innerHTML = astring;
    }
var-astring;
函数foo(数组){

对于(i=1;iHi,感谢您的回复。是的,上面的代码就是我对页面的第一个实例所做的。但是在之后,当用户选择一个组合框选项时,1)使用数组2)应该运行foo()同样,myDiv更新为B C A而不是B C,新页面只显示B C A和BlaBla消失。我将更新我的问题以使其更清楚。