坚持这个!将评级控件添加到我的aspx.page后调试,我收到错误:
System.Web.HttpException:无法修改Controls集合 因为控件包含代码块(即<%...%>)。
我知道标题<%= System.Web.Optimization.Scripts
是原因。
回顾一下;一切都编译,直到添加评级控制。如果我将<%=
设置为<%#
+ Page.Header.DataBind();
页面编译,但显然不会触发脚本。
所以需要一些帮助!谢谢
[HttpException (0x80004005): The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).]
System.Web.UI.ControlCollection.Add(Control child) +9855103
AjaxControlToolkit.ToolkitResourceManager.RegisterCssReferences(Control control) +829
AjaxControlToolkit.ExtenderControlBase.OnLoad(EventArgs e) +81
System.Web.UI.Control.LoadRecursive() +54
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772
<head runat="server">
<title>bla</title>
<%= System.Web.Optimization.Styles.Render("~/css") %>
<%= System.Web.Optimization.Scripts.Render("~/bundles/jquery") %>
<%= System.Web.Optimization.Scripts.Render("~/bundles/stack") %>
$(document).ready(function () {
});
</script>
答案 0 :(得分:1)
此示例向if(parseInt($(this).attr('data-col')) > 1)
{
$(".gridster ul").data('gridster').move_widget($(this), 1, lastRow);
}
添加资源,但也适用于<head>
工作的任何控件
对于CSS:
Controls.Add()
对于JS:
System.Web.UI.WebControls.Literal lit = new System.Web.UI.WebControls.Literal();
lit.Text = System.Web.Optimization.Styles.Render("~/bundles/my_css").ToHtmlString();
Header.Controls.Add(lit);
尝试从codebehind添加
答案 1 :(得分:1)
我更改了Page.Header.DataBind();在我的代码后面的this.Header.DataBind();它工作正常! thnx to contributors