-1

CSS が無効になっているが JavaScript が無効になっている場合、要素 (私の場合はファイル入力フィールド) を非表示にするにはどうすればよいですか? CSS が有効になっている場合はすべて機能しますが、次のいずれも機能しません。

element.style.display = 'none';
element.style.visibility = 'hidden';
element.hidden = 'hidden';
element.hidden = true;
element.setAttribute('hidden','hidden');
element.setAttribute('hidden',true);

私の知る限り、CSS が無効になっているときに非表示にできるのは、非表示の入力フィールドだけです。解決につながるかもしれません。どんな助けでも大歓迎です、ありがとう!

4

3 に答える 3

1

これは要素であるため、非表示にinput変更できます。type

element.type = "hidden";

ただし、これは一部の IE バージョンでは機能しないことに注意してください。hiddenその場合、新しい要素を作成し、タイプを指定して、それらを交換する必要があると思います。

デモ: http://jsfiddle.net/gLvRz/

于 2012-10-29T01:18:00.830 に答える
0

要素を悪用して、そのAREA中に何かを隠すことができると思います。

//hide element
var hiddenContainer = document.createElement("AREA");
element.parentNode.insertBefore(hiddenContainer, element);
hiddenContainer.appendChild(element);

//show element
hiddenContainer.parentNode.insertBefore(element, hiddenContainer);
于 2012-10-29T03:14:35.677 に答える
0

DOM から要素を削除するだけです。

element.parentNode.removeChild(element);

後で復元したい場合は、その HTML コード (または要素自体への参照) を変数に格納できます。フォーム フィールドの場合、その値も保存し、要素自体を復元した後に値を復元する必要がある場合があります。

また、hiddenHTML5-attributeの使用を検討してください。ただし、ブラウザによるサポートはまだそれほど広くはないかもしれません (また、属性自体が HTML 標準から削除される可能性があります)。

于 2012-10-29T01:17:04.390 に答える