Javascript 将内容定向到div时出现问题(内容显示在新页面上)
我有一个网页,我有一个div,我想重新填充。 目前,该div的内容是通过以下方式使用Javascript生成的: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
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消失。我将更新我的问题以使其更清楚。