Ansonlove
Ansonlove
采纳率100%
2015-09-25 15:12

innerHTML的兼容问题?IE8以上提交数据后获取不了内容

100
  • javascript
已采纳

图片说明


更多图片中,IE8以上,保存后获取不了内容
<form name="editForm" method="post" action="?Action=SaveEdit&Result=Modify&ID=5">
<TR height=28>     
     <td  rowspan="3" width=200>更多图片:</td>    
     <td ><input name="UrlVolume" type="text" size="2" class="textfield" maxlength="2" >    
       张 <input type="button" name="SubmitUrl" onClick="setid();" value="设定" class="button">    
      输入数量后点设定</td>    
   </tr>    
    <TR>    
     <td id="PicUp" class=forumRowHighlight></td>    
   </tr> 
   <TR >    
     <td >&nbsp;</td>    
     <td ><input name="submitSaveEdit" type="submit"  id="submitSaveEdit" value="保存" ></td>    
   </tr>    
 </form>    
</table>    
<script type="text/javascript">    
function setid()    
{    
str='';    
if(!document.editForm.UrlVolume.value)    
document.editForm.UrlVolume.value=1;    
for(i=1;i<=document.editForm.UrlVolume.value;i++)    
{    
if(document.editForm.UrlVolume.value<100)    
{    
str+='<input type="text" name="PicUrl'+i+'" value="0'+i+'" class="textfield" style="WIDTH: 240;" title="图片地址">&nbsp;<input type="text" name="PicName'+i+'" value="包装" class="textfield" style="WIDTH: 100;" title="中文描述">&nbsp;<input type="text" name="PicNameEn'+i+'" value="English'+i+'" class="textfield" style="WIDTH: 100;" title="英文描述">&nbsp;<a href=javaScript:OpenScript("UpFileForm.asp?Result=PicUrl'+i+'",460,180)><img src="images/upfile.gif" width="44" height="22" border="0" align="absmiddle"></a><br>';    
}    
}    
document.all.PicUp.innerHTML=str;    
}    
</script>    
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • showbo GoCityPass新加坡曼谷通票 6年前

    IE11不支持document.all,引用dom对象最好是用document.getElementById。

    
            document.getElementById('PicUp').innerHTML = str;
    

    而且你的form标签不要嵌套到table里面,form不是table的合法子元素,浏览器可能会乱解析,导致你添加的内容不再form表单内,你自己f12调出开发工具看dom结构就知道了,你的应该就是这个问题。

     <form name="editForm" method="post" action="?Action=SaveEdit&Result=Modify&ID=5">
        <table>
            <tr height=28>
                <td rowspan="3" width=200>更多图片:</td>
                <td>
                    <input name="UrlVolume" type="text" size="2" class="textfield" maxlength="2">
                    张 <input type="button" name="SubmitUrl" onclick="setid();" value="设定" class="button">
                    输入数量后点设定
                </td>
            </tr>
            <tr>
                <td id="PicUp" class=forumRowHighlight></td>
            </tr>
            <tr>
                <td>&nbsp;</td>
                <td><input name="submitSaveEdit" type="submit" id="submitSaveEdit" value="保存"></td>
            </tr>
        </table>
    </form>
    
    点赞 1 评论 复制链接分享
  • u011636518 1775490 6年前

    缺少post协议头!提交post提交数据需要额外增加一条协议头 !你研究一下http协议的post那段

    点赞 评论 复制链接分享
  • NoMasp nomasp 6年前

    没错是兼容性问题,考虑其他方法吧

    点赞 评论 复制链接分享
  • ajianchina ajianchina 6年前

    这是个老问题了,你用jQuery的html()函数吧,优点就是兼容非常好,只是要稍稍牺牲一点性能,你可以去看下该函数的相关使用示例,我就不搬砖了。

    点赞 评论 复制链接分享

相关推荐