不知道为什么,但是当我将自定义控件放在我的.aspx页面中时,它也会将ID渲染出来。因此,我正在向页面写出一些JavaScript,正好在中间我得到了我的控件名称,所以它搞乱了我的JavaScript。
所以在我的.aspx中我有:
<pm:Car ID="ProductCar" runat="server"/>
以下是开始渲染的内容:
<script type="text/javascript">
var ctl00_mainContent_ProductCar
lastProductID;var ctl00_mainContent_ProductCar
carSize;
...
你可以看到ctl00_mainContent_ProductCar是ID,它正在var之后呈现,所以我最终在我的JavaScript中找到了一个lastProductID not found错误,因为文本ctl00_mainContent_ProductCa阻碍了。
(更新)
protected override void Render(HtmlTextWriter writer)
{
writer.Write(BuildCarJavaScript());
}
只需将一堆JavaScript输出到页面即可。在我的JavaScript中没有任何地方我只是输出clientID就像我看到的一样。
在BuildCarJavaScript中,我正在创建该代码:
carJavaScript.Append(@"<script type=""text/javascript"">" + "\r\n");
carJavaScript.AppendFormat("var {0}lastProductID;", this.ClientID + "\r\n");
...
答案 0 :(得分:0)
不确定您的预期。这一行:
carJavaScript.AppendFormat("var {0}lastProductID;", this.ClientID + "\r\n");
准确地生产你所看到的东西。我想这可能会更好;你想要这个产生什么?