2017-07-19 42 views
0

我有一個搜索欄,使用javascript的搜索功能。點擊它會降低一些結果。但我需要設置一個時間1分鐘來顯示下拉結果,同樣可以將搜索合適性設置爲舊的。如何設置超時js onlick方法在php中

HTML CODE

<div class="dropdown"> 
    <input onclick="myFunction()" class="dropbtn" id="myInput" 
    placeholder="Search Stores & Brands" onkeyup="filterFunction()"> 
    <span class="glyphicon glyphicon-search form-control-feedback"></span> 

    <div id="myDropdown" class="dropdown-content">  
    <a href="<?php echo site_url()?>welcome/search_Bonanza">Bonanza</a> 
    <a href="<?php echo site_url()?>welcome/search_BestBuy">BestBuy</a> 
    <a href="<?php echo site_url()?>welcome/search_Belk">Belk</a> 
    <a href="<?php echo site_url()?>welcome/search_Benmeadows">Benmeadows</a> 
    <a href="<?php echo site_url()?>welcome/search_Backcountry">Backcountry</a> 
    <a href="<?php echo site_url()?>welcome/search_Cosme_de">Cosme - de</a> 

JS CODE

function myFunction() { 
    document.getElementById("myDropdown").classList.toggle("show"); 
} 
function filterFunction() { 
    var input, filter, ul, li, a, i; 
    input = document.getElementById("myInput"); 
    filter = input.value.toUpperCase(); 
    div = document.getElementById("myDropdown"); 
    a = div.getElementsByTagName("a"); 
    for (i = 0; i < a.length; i++) { 
     if (a[i].innerHTML.toUpperCase().indexOf(filter) > -1) { 
      a[i].style.display = ""; 
     } else { 
      a[i].style.display = "none"; 
     } 
    } 
} 
  • 我需要ONY 1或2分鐘以活性的onclick方法和刪除等felter功能保持相同
+0

的setTimeout(函數(){/ *代碼到這裏* /},1000/*時間(ms)* /) – error404

+0

'的setTimeout(函數() {document.getElementById(「myInput」)。onclick = null; document.getElementById(「myInput」)。onkeyup = null; },60000);''1分鐘後將從輸入中移除事件處理程序。這是你的意思嗎? – ADyson

+0

不,它不是。我需要執行1分鐘的onclick函數顯示結果。 –

回答

0

您可以再次切換類列表:

function myFunction() { 
    document.getElementById("myDropdown").classList.toggle("show"); 
    setTimeout(function(){ 
        document.getElementById("myDropdown").classList.toggle("show"); 
    },60000);//60000 for 1 minute. 
    } 
+0

希望這個給你所需的輸出。 –