Как отправить фактический идентификатор элемента управления UpdatePanel в сценарий UpdatePanelAnimationExtender ScriptAction? - PullRequest
0 голосов
/ 27 января 2011

Мне нужно отправить фактический управляющий идентификатор, который генерирует .NET для div элемента UpdatePanel, в функцию javascript.Как мне переписать строку ScriptAction ниже, чтобы выполнить это?

<asp:UpdatePanel ID="update1" runat="server" UpdateMode="Conditional">
    ...
</asp:UpdatePanel>

<cc1:UpdatePanelAnimationExtender runat="server" TargetControlID="update1">
    <Animations>
        <OnUpdating>
            <Parallel duration="0">
                <ScriptAction Script="doSomething(**update1's ID**);" />
            </Parallel>
        </OnUpdating>
        ...
    </Animations>
</cc1:UpdatePanelAnimationExtender>

РЕДАКТИРОВАТЬ :

Я бы хотел, чтобы update1.UniqueId был помещен в параметры doSomething.

РЕДАКТИРОВАТЬ :

Следующие ошибки:

<ScriptAction Script="alert('<%= update1.ClientID %>');" />

С

 Exception type: System.Web.HttpParseException
 Exception message: The 'Animations' property of 'cc1:UpdatePanelAnimationExtender' does not allow child objects.

Ответы [ 2 ]

1 голос
/ 27 января 2011

Вы пытались использовать его ClientID?

Script="doSomething('<%= update1.ClientID %>');"

В соответствии с вашим обновленным вопросом: добавьте этот ClientID в качестве переменной javascript вверху страницы. Затем вы можете получить к нему доступ из своей функции js.

Примерно так:

<script type="text/javascript">  var update1ClientID = '<%= update1.ClientID %>';</script>

и затем:

Script="doSomething('' + update1ClientID );"

Если это также не работает, попробуйте использовать тот же подход, но из Codebehind (Page_Load)

ScriptManager.GetCurrent(Me.Page).RegisterClientScriptBlock(Me, Me.GetType, "update1ClientID", "var update1ClientID='" & Me.update1.ClientID & "';", True)
1 голос
/ 27 января 2011
<ScriptAction Script="doSomething('<%=update1.ClientID %>');" />

** Редактировать *

Чтобы добавить к решению Тима, если у вас есть более одного пользовательского элемента управления на страницу, выполните итерацию по элементам управления страницы и добавьте сценарий регистрации для каждого элемента управления, который соответствует типу вашего пользовательского элемента управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...