2012-07-24 42 views
1

調用javascript函數的按鈕,點擊結束時,我試圖我如何在asp.net

Protected Sub btn_add_question_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_add_question.Click 
     frm_course.Visible = False 
     question_div.Visible = True 
     ScriptManager.RegisterClientScriptBlock(btn_add_question, Me.GetType(), "BlockName", "alert('hello world');", True) 
    End Sub 

Protected Sub btn_add_question_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_add_question.Click 
     frm_course.Visible = False 
     question_div.Visible = True 
     Page.ClientScript.RegisterStartupScript(Me.GetType, "Javascript", "alert('hello')") 
    End Sub 

但是,警告消息不顯示。需要幫忙 !!

<asp:Button ID="btn_add_question" runat="server" Text="Next" CssClass="btn_submit" Width="101px" /> 
+1

使用視圖so在結果頁面上搜索並搜索'alert' - 它看起來如何? – Hogan 2012-07-24 18:38:30

+0

另外,請發佈按鈕的asp代碼,也可能有錯誤。 – Hogan 2012-07-24 18:39:26

+0

沒有找到任何'alert' – Ravi 2012-07-24 18:42:02

回答

3

你需要通過傳遞True作爲最後一個參數來RegisterStartupScript爲使添加<script>標籤函數調用:

Page.ClientScript.RegisterStartupScript(Me.GetType, "Javascript", "alert('hello');",True) 

UPDATE

試試這個:

ScriptManager.RegisterStartupScript(Me.GetType, "Javascript", "alert('hello');",True) 
+0

沒有什麼幫助,和以前一樣。 – Ravi 2012-07-24 18:47:37

+0

@coders嘗試我的更新版本 – Icarus 2012-07-24 18:49:04

+0

我注意到一件事,當我評論'frm_course.Visible = False'時,它顯示警告框,現在爲什麼我不知道,請任何人解釋 – Ravi 2012-07-24 18:49:13

-2

添加OnClientClick處理程序的按鈕,或者更好的是,通過JavaScript附加處理程序,它應該是。

<asp:button id="myButton" runat="server" text="Postback" onclientclick="alert('hello world');" /> 

如果您所做的只是改變某些元素的某些可見性,則根本不應該做任何回發。只需使用input type="button"並通過javascript顯示/隱藏即可。

<input type="button" value="Next" id="btn_add_question" /> 

document.getElementById('btn_add_question').onclick = function() { 
    document.getElementById('frm_course').style.visibility = 'hidden'; 
    document.getElementById('question_div').style.visibility = 'visible'; 
    alert('hello world'); 
}; 
+0

請解釋你的downvotes – jbabey 2012-07-24 18:45:09

+0

這是vb的'處理btn_add_question.Click'在服務器端這樣做,你正在談論javascript – Hogan 2012-07-24 18:57:10

+0

@Hogan你做了一個毫無意義的回發做你可以在JavaScript中做的事情,這從代碼和延遲的角度來看是不好的。 – jbabey 2012-07-24 18:58:18