2010-04-04 6 views
4

Я ищу способ вставить блок кода javascript в конец страницы ASP.NET.Добавление кода javascript в конец тега тела

Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "showVideo", sScript, true); 

является добавление к телу, но JS коды всегда запрашивает некоторые JS файлы не загружать или некоторые функции ниже сценария.

Как добавить скрипты, которые я создал динамически в нижней части тела?

Благодарим за помощь.

ответ

10

Мы используем что-то вроде

public static void GenerateJsTag(this TemplateControl page, string jsCode) 
    { 
     var jsLink = new HtmlGenericControl {TagName = "script", InnerHtml = jsCode }; 
     jsLink.Attributes.Add("type", "text/javascript"); 
     page.Controls.Add(jsLink); 
    } 

надежда, что поможет;)

+0

Спасибо, Томас. Ваше решение тоже очень хорошо. Я нашел ответ сейчас и опубликовал, но я помету ваш ответ. Еще раз спасибо. – uzay95

9

Adding Client-Side Script Blocks with RegisterStartupScript() and RegisterClientScriptBlock()

Единственное различие между этими двумя способами, где каждый из них выделяет блок сценария. RegisterClientScriptBlock() выделяет блок сценария в начале веб-формы (сразу после тега), в то время как RegisterStartupScript() выделяет блок сценария в конце веб-формы (справа перед тегом </form>).

+1

Очень важно отметить, что методы RegisterScript связаны с

тегами тела или html. @ uzay95 спасибо за разъяснение. – Mike

+1

Вы бы подумали, что эти методы будут иметь более описательные имена, такие как RegisterScriptAtBeginning() и RegisterScriptAtEnd(), потому что I * still * не может запомнить, что есть. Но это Microsoft, я думаю – shiggity