2017-07-04 121 views
-3

有一種情況下,我需要一個像xyz()這樣的函數來調用一次頁面上的按鈕被點擊和頁面加載使用JavaScript/jQuery的。 我不能直接撥打xyz()<Body onload="xyz()">document.ready()$(window).on('load', function())。 我需要一個按鈕被點擊和頁面完全加載後調用的函數。在頁面加載 下面工作的代碼,但不是我的要求按鈕點擊後調用一個頁面加載函數

<body onload="xyz();"> 
    <form id="form1" runat="server">    
     <div id="vizContainer" style="width: 800px; height: 700px;"> 
     </div> 
    </form> 
</body> 

現在下面的按鈕點擊我需要的代碼,它不工作

<body> 
     <form id="form1" runat="server"> 
      <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="functiongetdata()" />  
      <div id="vizContainer" style="width: 800px; height: 700px;"> 
      </div> 
     </form> 
    </body> 
<script type="text/javascript"> 
     function functiongetdata() { 
      xyz(); 
     } 
    </script> 
+0

'$(function(){$(「#myButton」)。click(xyz); });'https://api.jquery.com/click/。谷歌這種基本的東西真的不難。 – ADyson

+1

你應該標記javascript和jquery,這與c無關# – MJK

+0

我想我沒有正確解釋我的問題。其實我有公共的畫面報告,我想打開按鈕點擊使用函數xyz()。但它沒有顯示它。但在身體負荷上它正常工作。 –

回答

-1

方法1:

在窗口加載功能,更新隱藏字段或添加標誌變量並設置爲真

var myWindowIsLoaded = false 
$(window).on('load', function(){ 
    myWindowIsLoaded = true; 
}); 

然後點擊按鈕檢查值

function xyz(){ 
if(myWindowIsLoaded){ 
    // Do your stuff 
} 
} 

方法2:

在按鈕單擊事件添加功能的窗口負載

$(window).on('load', function(){ 
    $("#myButton").click(xyz); 
}); 
2

,你可以使用的東西像這樣

$(function() { 
     $('button.start').click(function() { 
      $('img.lazy').lazy({ 
       bind: "event" 
      }); 
     }); 

     $('button.loadAll').click(function() { 
      $('.lazy').lazy({ 
       bind: "event", 
       delay: 0 
      }); 
     }); 
    }); 

請參考此鏈接清除示例 http://jquery.eisbehr.de/lazy/example_load-elements-by-events

相關問題