2014-08-27 98 views
0

所以我的代碼是:Javascript功能沒有達到其他功能?

PrintPage.aspx

<asp:Button ID="ViewAuctionsButton" OnClientClick="checkValidated();" Text="Visa" CssClass="" runat="server" /> 

<script type="text/javascript"> 
function checkValidated() { 
     if (document.getElementById('remember').checked) 
     { 
      ViewAuctionsButton_Click; 
     } 
     else 
     { 
      ViewAuctionsButtonChecked_Click; 
     } 
    } 
</script> 

PrintPage.aspx.cs

protected void ViewAuctionsButton_Click(object sender, EventArgs e) 
{ 
    *do stuff* 
} 

protected void ViewAuctionsButtonChecked_Click(object sender, EventArgs e) 
{ 
    *do stuff* 
} 

我希望你看到什麼,我想在這裏做。 「記住」是一個複選框,但這並不重要,因爲我知道一個事實,即當我單擊該按鈕時,它將在checkValidated中運行if/else代碼。 (我用alert(「」)框試了一下)。

現在我不知道如何使這個運行beucase它似乎沒有反應到「ViewAuctionsButtonChecked_Click;」。

但是,如果我不是代碼更改爲以下:

<asp:Button ID="ViewAuctionsButton" OnClick="ViewAuctionsButtonChecked_Click;" Text="Visa" CssClass="" runat="server" /> 

然後,它會運行。但後來我錯過了關於複選框被選中或不復選的部分。關於如何解決這個問題的任何想法?

在此先感謝。

+0

也許有用:http://stackoverflow.com/questions/886903/calling-asp-net-server-side-method-via-jquery – Turnip 2014-08-27 22:55:47

+0

把分號關閉。但是,您也可以在服務器端和客戶端之間進行調用。 – 2014-08-27 23:03:50

回答

2

你應該做的「記住」複選框,在服務器端控制,即:

<asp:CheckBox ID="RememberCheckBox" ... /> 

這樣,你可以使用OnClick="ViewAuctionsButton_Click;",並獲得該方法中的複選框的值:

protected void ViewAuctionsButton_Click(object sender, EventArgs e) 
{ 
    if (RememberCheckBox.Checked) 
     // do stuff 
    else 
     // do stuff 
} 
+0

我試過之前做過這樣的事情,謝謝! – Danieboy 2014-08-28 17:07:46