ie8中对于声明文档类型更加严格如下面的代码。
<input type='text' name='os' value='windows平台' style='width:100px' />
<script type="text/javascript">
function osdo(str){
document.getelementbyid("os").value=str;
}
</script>
<input name="ostmp" type="radio" value="" onclick="osdo('')" />清空
<input name="ostmp" type="radio" value="windows平台" onclick="osdo('windows平台')" />
windows平台 <input name="ostmp" type="radio" value="" onclick="osdo('s60v2')" />s60v2
<input name="ostmp" type="radio" value="" onclick="osdo('s60v3')" />s60v3
<input name="ostmp" type="radio" value="" onclick="osdo('chm')" />chm
<input name="ostmp" type="radio" value="" onclick="osdo('pdf')" />pdf
<input name="ostmp" type="radio" value="" onclick="osdo('ppt')" />ppt
<input name="ostmp" type="radio" value="" onclick="osdo('doc')" />word
<input name="ostmp" type="radio" value="" onclick="osdo('excel')" />excel
<input name="ostmp" type="radio" value="" onclick="osdo('asp')" />asp
<input name="ostmp" type="radio" value="" onclick="osdo('asp+access')" />asp+access
<input name="ostmp" type="radio" value="" onclick="osdo('asp+sqlserver')" />asp+sqlserver
<input name="ostmp" type="radio" value="" onclick="osdo('asp+sql/access')" />
asp+sql/access <strong>php源码</strong>
<input name="ostmp" type="radio" value="" onclick="osdo('php')" />php
<input name="ostmp" type="radio" value="" onclick="osdo('php+mysql')" />
php+mysql<input name="ostmp" type="radio" value="" onclick="osdo('jsp')" />jsp <strong>asp.net源码</strong>
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net')" />asp.net
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+access')" />asp.net+access
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+sql')" />asp.net+sql
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+sql/access')" />asp.net+sql/access
可以看到这段代码在ie7与ie8中都是可以运行的,下面的代码我们加入声明文档
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
加了上面的文档类型声明。
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
运行环境:
<input type='text' name='os' value='windows平台' style='width:100px' />
<script type="text/javascript">
function osdo(str){
document.getelementbyid("os").value=str;
}
</script>
<input name="ostmp" type="radio" value="" onclick="osdo('')" />清空
<input name="ostmp" type="radio" value="windows平台" onclick="osdo('windows平台')" />
windows平台 <input name="ostmp" type="radio" value="" onclick="osdo('s60v2')" />s60v2
<input name="ostmp" type="radio" value="" onclick="osdo('s60v3')" />s60v3
<input name="ostmp" type="radio" value="" onclick="osdo('chm')" />chm
<input name="ostmp" type="radio" value="" onclick="osdo('pdf')" />pdf
<input name="ostmp" type="radio" value="" onclick="osdo('ppt')" />ppt
<input name="ostmp" type="radio" value="" onclick="osdo('doc')" />word
<input name="ostmp" type="radio" value="" onclick="osdo('excel')" />excel
<input name="ostmp" type="radio" value="" onclick="osdo('asp')" />asp
<input name="ostmp" type="radio" value="" onclick="osdo('asp+access')" />asp+access
<input name="ostmp" type="radio" value="" onclick="osdo('asp+sqlserver')" />asp+sqlserver
<input name="ostmp" type="radio" value="" onclick="osdo('asp+sql/access')" />
asp+sql/access <strong>php源码</strong>
<input name="ostmp" type="radio" value="" onclick="osdo('php')" />php
<input name="ostmp" type="radio" value="" onclick="osdo('php+mysql')" />
php+mysql<input name="ostmp" type="radio" value="" onclick="osdo('jsp')" />jsp <strong>asp.net源码</strong>
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net')" />asp.net
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+access')" />asp.net+access
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+sql')" />asp.net+sql
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+sql/access')" />asp.net+sql/access
发现 提示document.getelementbyid(...) 为空或不是对象的解决方法
如果页面中既有文档声明,因为用div+css布局的时候,声不声明文档,页面的一些地方都不一样。
可以在head中添加下面的代码
<meta http-equiv="x-ua-compatible" content="ie=emulateie7" />
完整的代码
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<meta http-equiv="x-ua-compatible" content="ie=emulateie7" />
运行环境:
<input type='text' name='os' value='windows平台' style='width:100px' />
<script type="text/javascript">
function osdo(str){
document.getelementbyid("os").value=str;
}
</script>
<input name="ostmp" type="radio" value="" onclick="osdo('')" />清空
<input name="ostmp" type="radio" value="windows平台" onclick="osdo('windows平台')" />
windows平台 <input name="ostmp" type="radio" value="" onclick="osdo('s60v2')" />s60v2
<input name="ostmp" type="radio" value="" onclick="osdo('s60v3')" />s60v3
<input name="ostmp" type="radio" value="" onclick="osdo('chm')" />chm
<input name="ostmp" type="radio" value="" onclick="osdo('pdf')" />pdf
<input name="ostmp" type="radio" value="" onclick="osdo('ppt')" />ppt
<input name="ostmp" type="radio" value="" onclick="osdo('doc')" />word
<input name="ostmp" type="radio" value="" onclick="osdo('excel')" />excel
<input name="ostmp" type="radio" value="" onclick="osdo('asp')" />asp
<input name="ostmp" type="radio" value="" onclick="osdo('asp+access')" />asp+access
<input name="ostmp" type="radio" value="" onclick="osdo('asp+sqlserver')" />asp+sqlserver
<input name="ostmp" type="radio" value="" onclick="osdo('asp+sql/access')" />
asp+sql/access <strong>php源码</strong>
<input name="ostmp" type="radio" value="" onclick="osdo('php')" />php
<input name="ostmp" type="radio" value="" onclick="osdo('php+mysql')" />
php+mysql<input name="ostmp" type="radio" value="" onclick="osdo('jsp')" />jsp <strong>asp.net源码</strong>
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net')" />asp.net
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+access')" />asp.net+access
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+sql')" />asp.net+sql
<input name="ostmp" type="radio" value="" onclick="osdo('asp.net+sql/access')" />asp.net+sql/access