2013-02-10 79 views
1

我试图设计一个webpart,查看新闻项目列表,最初按日期排列所有行。如果用户选择一种新闻项目,那么只有那些新闻项目将被显示(再次按照日期排列)。问题是,我的WebPart不断抛出了这个错误,当我尝试调试它:Sharepoint中的JScript运行时错误Webpart

微软JScript运行时错误:未知的运行时错误

而且这个烂摊子其背后弹出:

RTE.RteUtility.$1n = function($p0, $p1) { 
if (RTE.RteUtility.isInternetExplorer() && $p0.tagName === 'TABLE') { 
    var $v_0 = document.createElement('DIV'); 
    $v_0.innerHTML = '<table>' + $p1 + '</table>'; 
    while ($p0.childNodes.length > 0) { 
     $p0.removeChild($p0.childNodes[0]); 
    } 
    RTE.RteUtility.$1E($v_0.firstChild, $p0); 
} 
else { 
    $p0.innerHTML = '<div>RTE</div>' + $p1; 
    $p0.removeChild($p0.firstChild); 
} 
} 

的行:“$ p0.innerHTML ='RTE'+ $ p1”似乎是造成这个问题。那么,否则,这是一个非常具体的错误信息,谢谢微软。 :/

错误似乎发生在由NewsFeed.cs调用CreateChildControls之后。我现在最好的理论可能是NewsFeedUserControl.ascx.cs中的某个内容导致错误,但由于我是SharePoint的新手,因此我不知道这可能是什么。是否因为Page_Load中的代码?

protected void Page_Load(object sender, EventArgs e) { list = web.Lists["NewsFeedLI"];

  query.Query = "<Where><IsNotNull><FieldRef Name='Headline' /></IsNotNull></Where></Query>" + 
       "<OrderBy<FieldRef Name='Article_x0020_Date' Ascending='True' /></OrderBy>"; 

     SPListItemCollection result = list.GetItems(query); 


     foreach (SPListItem item in result) 
     { 
      newsList.Text = newsList.Text + item["Headline"].ToString() + Environment.NewLine; 
      newsList.Text = newsList.Text + item["Summary"].ToString() + Environment.NewLine + Environment.NewLine; 
     } 
    } 

见,我不知道。

回答

0

尝试预定义您在循环中返回的文本。如果Web部分对于基本文本(例如“Hello World”)看起来没有问题,但没有更高级的值,那么问题出在哪里。

您需要确保将适当的编码应用于任何要渲染到屏幕上的输出,因为这可能会导致您遇到问题。

相关问题