创建服务器控件.创建问题
Create server control.Creation issue
我创建了一个新的服务器控件。请参阅下面的代码:
public class Tree : Control
{
#region Rendering
protected override void Render(HtmlTextWriter output)
{
RenderInputTag(output);
}
private void RenderInputTag(HtmlTextWriter htw)
{
//Javascript
htw.AddAttribute(HtmlTextWriterAttribute.Type, "text/javascript");
htw.RenderBeginTag(HtmlTextWriterTag.Script);
htw.Write("<%@ Register Src='"~/Controls/TreeJavascript.ascx'" TagName='"Tree'" TagPrefix='"flt'"%>");
htw.RenderEndTag();
}
#endregion
}
但是当我想使用控制器时,我收到以下错误:
Uncaught SyntaxError: Unexpected token <
如何解决?
这是呈现的 HTML:
<script type=text/javascript>
<%@ Register Src='"~/Controls/TreeJavascript.ascx'" TagName='"Tree'" TagPrefix='"flt'"%>
</script>
既然你说输出是这样的:
<script type=text/javascript>
<%@ Register Src='"~/Controls/TreeJavascript.ascx'" TagName='"Tree'" TagPrefix='"flt'"%>
</script>
很明显,问题的原因是服务器端标记未呈现为 HTML 中的代码。由于<%
在javascript中无效,因此它会中断。
我认为您应该在代码中初始化控件,并对其调用RenderControl
:
TreeJavascript t = new TreeJavascript();
t.RenderControl(htw);
否则,如果内容只是静态的,请将 javascript 保存在变量中并将其放在此处。
相关文章:
- 使用导航属性创建Kendo UI网格模型的问题
- 从数组在d3中创建条形图时出现问题
- Knockout映射创建/更新出现问题
- 创建服务器控件.创建问题
- 标签的rggraph问题Above未出现在第二个图形创建中
- 在我的网站上创建一个在1-10之间不断变化的数字时遇到了问题.Javascript
- 创建jQuery对象时出现问题
- InnerHTML创建问题,没有't加载顺序正确,可能存在处理问题
- 新对象创建问题
- jquery 查询字符串创建问题
- D3 分组条形图创建问题
- jQueryMobile的页面创建问题很有趣
- AngularJS LocalForage CRUD创建问题
- Node.JS对象创建问题“;用户不是一个函数”;
- Braintree支付方式在node.js中创建问题
- 如何使用Node.JS在JIRA上创建问题
- Jquery函数调用/创建问题
- 在windows 10中使用mkdirp文件夹创建问题
- Javascript原型-对象创建问题
- 切克框单击创建问题