ホームページ  >  記事  >  ウェブフロントエンド  >  Firefox の jQuery html() (.innerHTML を使用) は DOM の変更を無視します_jquery

Firefox の jQuery html() (.innerHTML を使用) は DOM の変更を無視します_jquery

WBOY
WBOYオリジナル
2016-05-16 18:32:551094ブラウズ

DOM:

复制代码 代码如下:

function DisplayTextBoxValue(){
var 要素= document.getElementById('テキストボックス');
// DOM 要素の属性を手動で設定します - innerHTML を更新します
element.setAttribute('value', element.value);
alert(document.getElementById("container").innerHTML);
false を返します。
}

.formhtml() がこれを自動的に行うようにする jQuery プラグイン:
复制代码 代コード如下:

(function($) {
var oldHTML = $.fn.html;
$.fn.formhtml = function() {
if (引数.length) return oldHTML.apply(this,arguments);
$("input,textarea,button", this).each(function() {
this.setAttribute('value',this.value) ;
});
$(":radio,:checkbox", this).each(function() {
// 「チェック済み」に対してこれを行う必要があるかどうかさえわかりません
// でも、何だ、残念よりは安全です
if (this.checked) this.setAttribute('checked', 'checked')
else this.removeAttribute('checked'); });
$("option", this).each(function() {
// これもわかりませんが、より安全です...
if (this.selected) this.setAttribute( 'selected', 'selected');
else this.removeAttribute('selected')
return
};
// $.fn.html = $.fn.formhtml
})(jQuery); したい場合は、実際の .html() をオーバーライドします。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。