0

すべての要素をデフォルト値にリセットする方法はありますか?

私はこれを試しましたが、何も起こりません

<script>
c = document.getElementsByClassName('myall')

for( b=0; b<c.length; b++ )
{
    c[b].reset();
}
<script>

.

<div class='myall'>
    <span>something default</span>
    <div>something default</div>
    <p>something default</p>
</div>

助言がありますか?

4

4 に答える 4

0

javascriptメソッドはタグ.reset()にのみ適用されます。<form>特定のクラスで入力値または要素テキストをクリアする簡単な方法が必要な場合は、jQueryを使用できます。

divそれ以外の場合は、、span:などの要素に次のようなものを使用します

c[b].innerHTML = "";
于 2012-10-11T05:28:39.280 に答える
0

HTML5 の data-* 属性を使用して、次のようなことができます。

<div id='myall'>
    <span data-default="something default">something default</span>
    <div data-default="something default">something default</div>
    <p data-default="something default">something default</p>
</div>     ​
...
<script>
    c = document.getElementById('myall').children;

    for( b=0; b < c.length; b++ )
    { 
        defaultValue = c[b].getAttribute('data-default');
        if (defaultValue) {
            c[b].innerText = defaultValue;
        }
    }
</script>

</p>

于 2012-10-11T06:14:29.200 に答える
0

終了タグのコードを確認してください。次に、

<script>
  var c = document.getElementsByClassName('myall')
 for( var b=0; b<c.length; b++ )
 {
     c[b].html(default_value);
 }
</script>

html

<div class='myall'>
   <span id="a">something default</span>
   <div id="b">something default</div>
   <p id="c">something default</p>
</div>
于 2012-10-11T05:43:03.297 に答える
0

要素を「リセット」するには、元のコンテンツを覚えておく必要があり、後で「リセット」するために呼び出されたときに置き換える必要があります。

var markupCache = {};

function modifyElement(id, newMarkup) {

    var el = document.getElementById(id);

    // Only store innerHTML the first time
    if (!(el in markupCache)) {
      markupCache[id] = document.getElementById(id).innerHTML;
    }
    el.innerHTML = markup;
}

function restoreElement(id) {

  // Only restore markup if have cached some for this element
  if (id in markupCache) {
    document.getElementById(id).innerHTML = markupCache[id];
  }
}

これにより、要素自体のプロパティと属性はリセットされず、内部 HTML のみがリセットされることに注意してください。これは、 outerHTMLプロパティを使用することで部分的に修正される可能性がありますが、十分にサポートされていません。

innerHTMLouterHTMLも、動的に追加されたリスナーを復元せず、一部のブラウザーでは元のデフォルト値を復元する場合と復元しない場合があります (ただし、他のブラウザーでは復元されます)。

于 2012-10-11T05:43:19.967 に答える