解决方案 »
- 怎样在第一个子节点加一个输入框?
- 求个正则表达式的写法!
- 用javascript怎样实现在不改变或覆盖当前文档的情况下输出
- 散分一百,在线等候很急,关于无法创建table和添加行的问题.
- 送一个数字金额转大写的函数(javascript),请指教!
- 想在iframe里显示纯文本,就像在textarea里一模一样,帮帮我!
- 如何去掉双击文本框出现的历史纪录?
- 大家看看这个script怎么写???
- 怎样让弹出的窗口不被另一个点击而弹出的窗口覆盖??
- angularjs如何获取本地某个文件夹下的所有文件
- 求救~ 哪位亲有这样的效果,求分享,感激不尽~
- 初学javascript中遇到的奇怪的问题,求解
<script type="text/javascript">
alert($("#div1")[0].innerHTML);//一样是没有
</script>
我查了W3C标准的input是 />闭合的
obj.innerHTML = htm;
就不是赋值这么简单。应该还有其他的东西要做,
如果你要问为什么会少了“/”?其实这个也很好解释。
首先你思考一个问题:
java文件编译成class后再反编译成java文件,此时的java文件会和class一模一样吗?
答案很显然:不会。
那么这个问题也很好解释,一个input标签同样会别浏览器解析成input对象(要不我们怎么能在页面上看到文本框效果?),在具体的说,整个页面会被解析成一棵dom树。
接下来我们需要思考另一个问题:innerHTML属性是去查询最开始的浏览器解析前的源页面呢?还是从dom中获取它内部的对象并使用toString()(当然,这个toString是比喻义了)将其打印出来呢?
其实这个问题也好解释:既然我们都说innerHTML是一个属性了(调用它的本身就是一个对象,对象本身就有值,那他还有什么理由去查询源页面呢?就好比执行类的方法时,有必要去查看java源文件的内容吗?)
在比如,htm="<input value=\"aa\" /><span>123"; ,你看看效果。