作家
登录

jQuery html() in Firefox (uses .innerHTML) ignores DOM changes

作者: 来源:www.28hudong.com 2013-03-30 01:48:51 阅读 我要评论

DOM: 复制代码 代码如下: function DisplayTextBoxValue(){ var element = document.getElementById('textbox'); // set the attribute on the DOM Element by hand - will update the innerHTML element.setAttribute('value', element.value); alert(document.getElementById("container").innerHTML); return false; } jQuery plugin that makes .formhtml() automatically do this: 复制代码 代码如下: (function($) { var oldHTML = $.fn.html; $.fn.formhtml = function() { if (arguments.length) return oldHTML.apply(this,arguments); $("input,textarea,button", this).each(function() { this.setAttribute('value',this.value); }); $(":radio,:checkbox", this).each(function() { // im not really even sure you need to do this for "checked" // but what the heck, better safe than sorry if (this.checked) this.setAttribute('checked', 'checked'); else this.removeAttribute('checked'); }); $("option", this).each(function() { // also not sure, but, better safe... if (this.selected) this.setAttribute('selected', 'selected'); else this.removeAttribute('selected'); }); return oldHTML.apply(this); }; //optional to override real .html() if you want // $.fn.html = $.fn.formhtml; })(jQuery);

  推荐阅读

  JavaScript中的闭包原理分析

我们来看一个定义: Closure 所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。 这说明了,JavaScript中的闭包是包含了上下文的函数,>>>详细阅读


本文标题:jQuery html() in Firefox (uses .innerHTML) ignores DOM changes

地址:http://www.17bianji.com/kaifa2/JS/26943.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)