Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > .NET: Web приложения > asp:ScriptManager |
Автор: Budda 19.11.07, 08:25 |
Всё странички сайта посредством UrlRewriter'а разруливаются через index.aspx. Ну и asp:ScriptManager находится у меня на index.aspx. Можно ли отображать этот asp:ScriptManager только для тех страничек, на которых будет использоваться AJAX? Например так: <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> <div id="dvScrMan" runat="server" visible="false"> <asp:ScriptManager runat="server"></asp:ScriptManager> </div> а в index.aspx.cs в PageLoad для нужных страничек делать dvScrMan.Visible=true? Не повлечёт ли это за собой каких-то последствий в виде бомб замедленного действия. Вроде не должно, верно? Ведь наличие внешнего дива по отношению к скрипт менеджеру ничем не должно мешать подключению нужных js-скриптов...? Или может этот asp:ScriptManager ложить в те контролы, в которых они используются.. Но что, если на одной страничке будет несколько контролов? |
Автор: UncleBob 19.11.07, 13:07 |
Вроде все нормально должно быть. В принципе, можно программно его добавлять, когда требуется... А когда не требуется - не добавлять. На всякий случай... <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> this.Form.Controls.Add (new ScriptManager()); А что значит "Ложить в контролы"? |
Автор: Budda 19.11.07, 13:22 |
Предположим на текущей страничке используется два ascx-элемента (UserControl) и в каждый добавлю по 1 SciptManager'у...? ТИпа перед тем , как делать Проверить <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> bool bAbsent=true; foreach( Control c in this.Form.Controls ) if ( c== ScriptManager ) // - Как проверить? bAbsent=false; if ( bAbsent == false ) this.Form.Controls.Add (new ScriptManager()); Так делатЬ, да? |
Автор: UncleBob 19.11.07, 13:35 |
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> if (null == ScriptManager.GetCurrent(this)) { this.Form.Controls.Add (new ScriptManager()); } только из контролов правильнее использовать ScriptManagerProxy |
Автор: Budda 19.11.07, 13:41 |
Спасибо. |