2016-03-17 19 views
1

我網頁上的ASP.NET按鈕:的OnClientClick導致網頁刷新

<asp:Button ID="TickButton" runat="server" OnClientClick="SelectSome()" Text="Tick" /> 

和JavaScript函數:

function SelectSome() { 
     var id = document.getElementById("ctl00_ContentPlaceHolder1_txtSelectSome").value; 
     if (isNaN(id)==false) 
     { 
      var frm = document.forms[0], j = 0; 
      for (i = 0; i < frm.elements.length; i++) { 
       if (frm.elements[i].type == "checkbox" && j < id) { 
        frm.elements[i].checked = true; 
        j++; 
       } 
      } 
     } 
     else 
     { 
      alert("You must enter a number.") 
     } 
     return false; 
    } 

當我按一下按鈕; JavaScript函數運行,然後網頁刷新。爲什麼網頁刷新?根據這個鏈接;返回FALSE應阻止網頁刷新:Stop page reload of an ASP.NET button

+0

在引用的帖子中有OnClientClick的回報,但不是在您的帖子,把這將停止回發。還使用ClientID而不是硬編碼clientID,document.getElementById(「<%= txtSelectSome.ClientID%>」) – Adil

回答

3

對於clientclick使用return

<asp:Button ID="TickButton" runat="server" OnClientClick="return SelectSome()" Text="Tick" /> 

OR 你可以簡單地使用服務器端的編碼的HTML按鈕則不需要。

<asp:Button Text="Tick" runat="server" OnClientClick="return SelectSome()" /> 
+0

謝謝。當它讓我時,我會將其標記爲回答。 – w0051977