2011-09-25 98 views
0

我有一個調用存儲過程並綁定gridview的按鈕。 我發現上面的提醒條計算器上一個這樣的代碼:回覆後顯示警告

function topBar(message) { 
     var alert = $('<div id="alert">' + message + '</div>'); 
     $(document.body).append(alert); 
     var $alert = $('#alert'); 
     if ($alert.length) { 
      var alerttimer = window.setTimeout(function() { 
       $alert.trigger('click'); 
      }, 10000); 
      $alert.animate({ height: $alert.css('line-height') || '50px' }, 500).click(function() { 
       window.clearTimeout(alerttimer); 
       $alert.animate({ height: '0' }, 200); 
      }); 
     } 
    } 

然後在我的按鈕,我嘗試調用這個函數是這樣的:

Dim script As String = String.Format("topBar({0});", Server.HtmlEncode("Successfully Inserted")) 
     Response.Write(script) 'Or even like this 
     ClientScript.RegisterStartupScript(Page.GetType(), "topBar", script, True) 

但它根本不起作用。 你能指導我正確的方向嗎?

回答

1

我總是通過提供布爾屬性來排序這種類型的問題,無論JavaScript是否應該觸發一段腳本。例如:

public bool IsDone { get; set; } 

Sorry that the code is in C#

這是隱藏文件代碼的屬性。當我需要啓動javascript方法時,我只是簡單地說明了這一點。

我的aspx頁面上做的是如下:

<script>  

    if(<%= IsDone.ToString().ToLower() %>) { 
     alert("Done!"); 
    } 

</script> 
+0

我得到這個錯誤:「Controls集合不能修改,因爲該控件包含代碼塊」我隱藏說道:公共昏暗IsDone由於布爾=真:( – user194076

+0

把你的腳本代碼塊放在'

'裏面,如果它不需要在頭部分上,有什麼變化嗎? – tugberk

+0

現在沒有錯誤,但也沒有提醒。 – user194076