2017-03-08 26 views
0

我有2個相同的按鈕相同的禮貌,區別在於1是asp按鈕,另一個是HTML按鈕,我試圖重定向到另一個頁面,並且HTML按鈕工作正常,但asp按鈕不由於某種原因重定向。我已經重新創建了asp按鈕來查看它是否是visual studio bug,但事實並非如此。我不需要使用asp控件,但只是想知道我做錯了什麼。這裏是我的代碼示例:OnClientClick不起作用

HTML按鈕

<button type="button" id="Btn_16" 
     class="btn btn-block btn-lg btn-danger butao" onclick="see_16()">16 </button> 

ASP按鈕

<asp:Button ID="Btn_16" runat="server" Text="16" 
     CssClass="btn btn-block btn-lg btn-danger butao" OnClientClick="see_16()" /> 

DIV像一個按鈕(也適用)

<div id="Btn_16" class="btn btn-block btn-lg btn-danger butao" onclick="see_16()">16</div> 

所有的控件具有相同的名稱,但在我的代碼中他們被評論,所以這不是問題。

see_16 javascript函數:

function see_16() { 
{ 
    window.location.href("16.aspx"); 
};} 
+0

參見[如何改變頁面的JavaScript(HTTP://計算器.COM /問題/ 3846935 /如何對變化頁由內而外地的JavaScript)。 – mason

+0

@mason - >在評論之前先嚐試解決方案。 OnClientClick =「see_16(); return false;」與OnClientClick =「return SomeMethod();」一樣。 – Sailor

+0

@Sailor他沒有正確地更改頁面位置。 – mason

回答

1

服務器端ASP.NET的按鈕即可調用postback事件。所以你需要禁用postback。這工作,只要你想:

OnClientClick="see_16();return false;" 

當然隨着@ajai Jothi也說你JS應該是這樣的:

window.location.href = "16.aspx"; 
+0

非常感謝你的配合。爲我工作得很好 –

-1

'window.location.href'不是一個函數

function see_16() { 
    window.location.href = "16.aspx"; 
} 
+1

這只是答案的一部分,並沒有解決回發問題。 – mason

+0

此外,您可以通過更詳細地解釋事情來提高此答案的質量,而不僅僅是代碼解答。 –

-1

OnClientClick=SomeMethod()事件按鈕,默認情況下它true該功能也做回發後那麼回事。

的解決方案配合使用:

//use this code in BUTTON ==> OnClientClick="return SomeMethod();" 

//and your function like this 

<script type="text/javascript"> 
    function SomeMethod(){ 
    // put your code here 
    return false; 
    } 
</script>