-2

如果找到「X特定字符串」,我需要能夠隱藏下拉框。關於如何做到這一點的任何想法,我會感激。我搜索了隱藏的文本框/下拉菜單,但是我找不到通過搜索整個頁面來使其工作的方法。謝謝我需要一個JavaScript來搜索頁面中的文本,然後隱藏下拉框

我還沒有選擇任何搜索和隱藏,因爲它不工作。 http://stackoverflow.com/questions/6848797/show-hide-drop-down我看過這個選項。

+5

告訴我們你試過的東西,你的javascript,html代碼。 –

+1

另見:found where;在文件中?在文本框中?在iframe中? –

+1

你在與什麼部位作戰:搜索字符串或隱藏一個元素? –

回答

0

要從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將使其不可見,但頁面上會有空白空間。

還有就是要以測試頁面上的特定字符串的方法不止一種,而是一種方法是隻是爲了獲得通過body元素的innerHTMLtextContent(或在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/

+0

nnnnnnn,那正是我需要的!非常感謝!! – Skorpion

相關問題