2011-01-25 68 views
11

奇怪的是,我得到了這個問題:Asp.net:無法調試此問題:Sys.ArgumentNullException:值不能爲空。參數名稱:元素

Sys.ArgumentNullException:值不能爲空。參數名稱:元素。

這個問題只發生在IE中。

詳細說明:

  • 的ScriptResource.axd =行:4868
  • 代碼:0 - 字符:12個

頁面錯誤細節

用戶代理:Mozilla的/ 4.0(兼容; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; .NET4.0C;。 NET4.0E; AskTbBT4/5.8.0.12304) 時間戳:2011年1月25日星期二11:24:42 UTC

消息:Sys.ArgumentNullException:值不能爲空。 參數名:元素 行:4868 字符:12 代碼:0 URI:http://asdfsdf/ScriptResource.axd?d=7NwOnZl2VMauVPybpy_0vvP2zsCf0g8YK4dd3SkNMq873HwvoDhnE7rPvjFZwFLM0&t=11e661nl.js

提前感謝!

+0

你能展示一些涉及參數元素的代碼嗎?錯誤說你的元素變量是null或undefined。顯示代碼行如何獲取元素? – 2011-01-25 11:27:40

+0

你使用任何AJAX控件? Ajax控件工具包?第三方ASP.NET AJAX控件? – 2011-01-25 12:37:58

+0

我有同樣的問題。無可否認,它是UpdatePanel和ajaxcontroltoolkit的組合。 – UmaN 2012-12-18 07:27:19

回答

15

我有同樣的問題...

這是無可否認的UpdatePanel和AjaxControlToolkit的組合...

編輯:

沒有看到這個問題的年齡。也許它不再相關......但在我的情況下,現在我遇到了這個問題,現在發現了兩個不同的解決方案。第一次發生涉及更新面板,一個modalpopupextender和一個驗證摘要控制。問題在於validationsummary在生成的javascript結尾處沒有輸出分號。解決的辦法是創建自己的微型控制,從繼承的ValidationSummary並執行該預渲染:

protected override void OnPreRender(EventArgs e) 
    { 
     base.OnPreRender(e); 

     ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), this.ClientID, ";", true); 
    } 

簡單地增加一個分號的JavaScript。這解決了它。

我不確定我現在是否再次遇到同樣的問題,但是我的問題頁面又有了updatepanels,ajaxcontrol工具包控件(Modalpopupextender)和validaiton摘要。因爲我忘記了以前的解決方案,所以我嘗試了另一個我在谷歌上找到的解決方案;設置

ScriptMode="Release" 

對我的scriptmanager在我的母版頁。這工作。不知道我是否應該高興或不喜歡這個...看起來像調試版本吐出了JavaScript,與其他一些asp.net控件結合使用時不起作用。

26

將ScriptMode更改爲發佈爲我解決了這個問題。

<asp:ScriptManager ID="ScriptManager1" runat="server" ScriptMode="Release"></asp:ScriptManager>

2

如果設置可見你也將收到此錯誤=假在一個ModalPopupExtender的CancelControlID指定的控制。如果你有一個代碼路徑,你需要隱藏CancelControlID,那麼一定要在這種情況下設置CancelControlID =「」。這是繼

protected override void RenderContents(HtmlTextWriter writer) 
{ 
    myUpdatePanel.RenderControl(writer); 
} 
1

Happend我在那裏我已經在一個自定義服務器控件創建了一個更新面板並沒有採用RenderControl() ReportViewer可能有幫助。

在web.config中設置compilation debug="false"

0

如果你使用的是我遇到了這個問題...

相關問題