我面臨着很奇怪的問題。我嘗試了很多東西,但無法解決問題。這是場景。Scriptmanager不能在部分回發上工作只有在Firefox上
我有一個GridView
40個記錄。我正在註冊OnRowDataBound
的劇本GridView
的事件。我使用ScriptManager.RegisterStartupScript
註冊。 GridView
位於UpdatePanel
之內,UpdatePanel
在一分鐘後刷新。
第一次加載頁面時,我的腳本正常工作。但是在部分回發之後,它停止在Firefox上工作。它正在開發Chrome,IE,Safari和Opera。這只是Firefox正在創造問題。
我已經嘗試了很多可用的互聯網解決方案,但沒有爲我工作。此外,當頁面部分加載時,我不再註冊該腳本,因爲它已經被註冊。對於Firefox,我嘗試了在部分回發上註冊腳本,但沒有運氣。這是怎麼了註冊:
ScriptManager scriptManager = ScriptManager.GetCurrent(this);
if (scriptManager != null && !scriptManager.IsInAsyncPostBack)
{
ScriptManager.RegisterStartupScript(this.UpdatePanel5, this.UpdatePanel5.GetType(), e.Row.RowIndex.ToString(), "<script language='javascript' type='text/javascript'>alert('Error Message');</script>", false);
//
}
我已經改變的RegisterStartupScript的最後一個參數爲真,並刪除腳本標記嘗試。
如果我刪除IsInAsyncPostBack它會爲同樣的目的添加重複的腳本。它會混淆瀏覽器。我也嘗試過scriptname = guid和RegisterScriptBlock。沒有工作。 –