「X固有の文字列」が見つかった場合、ドロップダウンボックスを非表示にできるようにする必要があります。これを行う方法についてのアイデアはありがたいです。非表示のテキストボックス/ドロップダウンを検索しましたが、ページ全体を検索しても機能させる方法が見つかりません。ありがとう
検索が機能しないため、検索と非表示を選択していません。http://stackoverflow.com/questions/6848797/show-hide-drop-down私はこれとしてオプションを見てきました。
「X固有の文字列」が見つかった場合、ドロップダウンボックスを非表示にできるようにする必要があります。これを行う方法についてのアイデアはありがたいです。非表示のテキストボックス/ドロップダウンを検索しましたが、ページ全体を検索しても機能させる方法が見つかりません。ありがとう
検索が機能しないため、検索と非表示を選択していません。http://stackoverflow.com/questions/6848797/show-hide-drop-down私はこれとしてオプションを見てきました。
JavaScriptから要素を操作するには、何らかの方法でその要素への参照を取得する必要があります。これは、さまざまな方法で実行できます。コンテキストを使用せずに、選択した要素にid
属性があることを確認するのが最善の方法です。
<select id="myDropDown" name="whatever">
<option>One</option>
<option>Two</option>
</select>
...そして使用しますdocument.getElementById()
。次に、それを非表示にするために、適切なスタイルプロパティを更新できます。
document.getElementById("myDropDown").style.display = "none";
// OR
document.getElementById("myDropDown").style.visibility = "hidden";
を使用するdisplay:none
と、ブラウザは要素が存在しないかのようにドキュメントをレンダリングします。つまり、ドキュメント用のスペースは残りません。を使用visibility:hidden
すると非表示になりますが、ページに空きスペースができます。
ページ上の特定の文字列をテストする方法は複数ありますが、1つの方法は、body要素のinnerHTML
or textContent
(またはIEのinnerText
場合)プロパティを介してすべてのコンテンツを取得し、次を使用すること.indexOf()
です。
var searchString = "some string",
pageContent = document.body.innerHTML;
if (pageContent.indexOf(searchString) != -1) {
document.getElementById("myDropDown").style.display = "none";
}
そのコードをどこに配置するかは、いつテストを実行するかによって異なります。onload
ユーザー入力なしで実行したい場合はハンドラーに配置できます。それ以外の場合は、クリックハンドラーなどに配置します。
デモ: http: //jsfiddle.net/n8uA9/