0
我正在尝试使用谷歌地图,为此我做了一个用户控件,我尝试注册一个JavaScript,但又像往常一样,它没有得到注册,所以我试图注册它后面的代码使用clientscript。但是,同样的问题。它没有被注册。在用户控件中调用javascript
以下代码写在usercontrol的页面加载事件中。
ClientScriptManager script = Page.ClientScript;
if (!script.IsStartupScriptRegistered(this.GetType(), "scriptKey"))
{
StringBuilder sb = new StringBuilder();
sb.AppendLine("function initialize() {");
sb.AppendLine("var latlng = new google.maps.LatLng(%%LAT%%, %%LONG%%);");
sb.AppendLine("var myOptions = {");
sb.AppendLine("zoom: 8,");
sb.AppendLine("center: latlng,");
sb.AppendLine("mapTypeId: google.maps.MapTypeId.ROADMAP");
sb.AppendLine("};");
sb.AppendLine("var map = new google.maps.Map(document.getElementById(\"\"%%CLIENTID%%\"\"), myOptions);");
sb.AppendLine("}");
sb = sb.Replace("%%CLIENTID%%", this.ClientID);
sb = sb.Replace("%%LAT%%", (a1 == null ? 42.006160736084 : a1.latitude).ToString());
sb = sb.Replace("%%LONG%%", (a1 == null ? -93.6386795043945 : a1.longitude).ToString());
script.RegisterStartupScript(this.GetType(), "scriptKey", sb.ToString(), false);
然后我尝试在aspx页面中使用这个控件。任何帮助,将不胜感激, 谢谢!
或者,如果他不想添加标签,他可以将script.RegisterStartupScript的最后一个参数更改为true,它会为他添加脚本标签。 – Adrian 2011-01-26 23:20:54