好吧,我很難過,我有一個好的10個其他頁面都使用相同的佈局等所有工作正常,但我創建了一個新的頁面,不能讓它工作。this.el爲空,造成<form runat =「server」>
我注意到了什麼是導致錯誤,但我不知道爲什麼或如何解決它。看看下面的代碼,
其形式與runat=server
,Ext.Net資源管理器,視口,標籤面板和2面板,沒有代碼後面。
當我加載這個時,我在Chrome中得到了可怕的this.el is null
,在Chrome中得到Uncaught TypeError: Cannot set property 'setSize' of null
。但是,唉,我刪除表單標籤,一切正常,因爲它應該。現在你可能會說只需刪除表單標籤,但我不能在稍後添加需要此標籤的asp.net控件。
標記:「!」
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="PriceSetting.aspx.cs" Inherits="V2_RenewalsProcess_PriceSetting" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Ovott V2</title>
</head>
<body>
<form id="pricesetting" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Viewport ID="Viewport1" runat="server" Layout="border">
<Items>
<ext:TabPanel ID="TabPanel1" runat="server" Region="Center">
<Items>
<ext:Panel ID="Panel5" runat="server" Title="To Be Submitted" Border="false">
</ext:Panel>
<ext:Panel ID="Panel6" runat="server" Title="Awaiting Approval">
</ext:Panel>
</Items>
</ext:TabPanel>
</Items>
</ext:Viewport>
</form>
</body>
</html>
或許真的不是一個形式問題,去掉RUNAT =「服務器時,因爲「或完整標籤只會導致控件不加載客戶端腳本。檢查TabPanel或Wievport控件是否具有名爲「Size」的屬性,並且如果您將它設置爲某個「null」值或者根本沒有設置該值,請嘗試設置默認值並檢查如果有效的話。 – dejanb 2011-03-11 09:02:49
我只是再次測試它,我改變的唯一的事情是從表單標記中刪除runat =「server」,並且它完美地工作,順便說這個帖子中的代碼是頁面上唯一的代碼,所以我不設置大小或任何東西其他地方。 – 2011-03-11 09:13:50
Jezus,我一開始沒有注意到,但是你的DOCTYPE標記形成了錯誤,它在前面缺少一個「Q」「<!DOCTYPE html PUBLIC」 - // W3C // DTD XHTML 1.0 Transitional // EN「」http ://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd「>」 – dejanb 2011-03-11 09:54:12