2013-02-28 56 views
0

我已經落後了下面的代碼 -的Javascript彈出不加載

int p = 0; 

     try 
     { 

      p = System.Convert.ToInt16(txt7.Text); 
     } 
     catch 
     { 
      Page.ClientScript.RegisterStartupScript(this.GetType(), "showMyMessage", "ShowMessage('Value must be numerical');", true); 
     } 

而且功能 -

<script> 

    function ShowMessage(message) { alert(message); } 

</script> 

在調試它進入捕撈但是彈出不前點火結束,我錯過了什麼?

+0

通過'調試它進入捕獲然而彈出不在前端觸發',我希望你不希望彈出窗口出現,只要你調試'RegisterStartupScript'行的方式嗎? – Rawling 2013-02-28 11:44:44

+0

不,它在正常運行時錯過了這一點,我不知道爲什麼它不工作。 – Ebikeneser 2013-02-28 11:46:09

+0

夠公平了......我見過很多人希望這種事情立即顯示在客戶端上^^如果你加載頁面並查看源代碼,你能看到對'ShowMessage'的任何引用嗎?一個定義,還是一個調用? – Rawling 2013-02-28 11:50:53

回答

1

將您的腳本放在頁面頂部(在您的身體標記或頭標記內),因爲這可能是原因。 啓動腳本調用應該位於您提到的腳本之下。和最佳實踐,請如果您使用的UpdatePanel寫這樣

<script type="text/javascript"> 

    function ShowMessage(message) 
    { 
     alert(message); 
    }  
</script> 
+0

我很確定'RegisterStartupScript'呈現腳本在頁面的最後部分:'通過RegisterStartupScript方法添加的腳本塊在頁面完成加載時但在頁面的OnLoad事件引發之前執行。' – Rawling 2013-02-28 11:46:22

1

,那麼你應該使用腳本和地方腳本ScriptManager.RegisterStartupScript

0

添加型頂部..

<script type="text/javascript"> 

funcion ShowMessage(message) 
{ 
    alert(message); 
} 

</script> 
+0

什麼是問題?爲什麼downvote? – coder 2013-02-28 12:04:05

+0

誰能告訴我爲什麼我的答案是downvoted .. – coder 2013-02-28 12:09:10

+0

我不知道,但我猜你沒有回答什麼,只是用類型屬性重寫了問題。 – happygilmore 2013-02-28 13:32:19