Добавление 2 сценария HTMLGenericControl с атрибутом src не работает
У меня есть приложение asp.net 2.0 C#. У меня есть 2 сценария, которые я хочу добавить в коллекцию элементов управления пользователя. Вместо того, чтобы добавлять их один за другим, он открывает только один тег script и объединяет 2 строки src вместе как строки
string tagLinks = "/Resources/Javascript/js/taglinks.js";
HtmlGenericControl scriptTagLinks = new HtmlGenericControl("script");
scriptTagLinks.Attributes["type"] = "text/javascript";
scriptTagLinks.Attributes["src"] = tagLinks;
this.Controls.Add(scriptTagLinks);
script = new HtmlGenericControl("script");
script.Attributes.Add("type", "text/javascript");
script.Attributes.Add("src", gsJSHost);
this.Controls.Add(script);
Вот что происходит:
<script type="text/javascript">/Resources/Javascript/js/taglinks.jsvar pageTracker =
_gat._getTracker('UA-1213766-27'); pageTracker._initData();pageTracker._trackPageview();</script>
1 ответ
Вот что я узнал о вашем ответе:
Я добавил (в основном) ваш код в событие, загруженное пользовательским элементом управления (которое будет вставлять теги сценария, которые вы ищете). У меня нет глобального сценария, который содержится в вашем gsJSHost
глобальная переменная, поэтому я заменил имя переменной.
Это мой контрольный код:
Public Partial Class MyControl
Inherits System.Web.UI.UserControl
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim tagLinks As String = "/Resources/Javascript/js/taglinks.js"
Dim scriptTagLinks As HtmlGenericControl = New HtmlGenericControl("script")
scriptTagLinks.Attributes.Add("type", "text/javascript")
scriptTagLinks.Attributes.Add("src", tagLinks)
Me.Controls.Add(scriptTagLinks)
Dim script As New HtmlGenericControl("script")
script.Attributes.Add("type", "text/javascript")
script.Attributes.Add("src", "gsJSHost")
Me.Controls.Add(script)
End Sub
End Class
Это мой результирующий источник страницы:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
</title></head>
<body>
<form name="form1" method="post" action="Default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUIMTI2NzczMzlkZE8ExRatvhvKqmX5DtpWJX8MhAcE" />
</div>
<div>
<script type="text/javascript" src="/Resources/Javascript/js/taglinks.js"></script><script type="text/javascript" src="gsJSHost"></script>
</div>
</form>
</body>
</html>
Загрузите исходный код в моем демонстрационном проекте кода Google: http://code.google.com/p/stackru-answers-by-scott/
Прямая ссылка на архивную загрузку:
http://stackru-answers-by-scott.googlecode.com/files/1716701.zip
Надеюсь, это поможет,