AJAX полностью отключил обратную передачу при нажатии кнопки - PullRequest
0 голосов
/ 21 октября 2011

Я добавил ScriptManager и UpdatePanel в свой пользовательский элемент управления, но теперь страница вообще не публикуется.Это единственный экземпляр ScriptManager на странице.Я использую VS 2010, и мой проект скомпилирован с платформой 4.0.EnablePartialRendering установлен на true в ScriptManager элементе управления.Могу ли я где-нибудь пропустить ссылку на сборку / регистрацию?

<asp:ScriptManager ID="ScriptManager1" runat="server" /> 

<asp:UpdatePanel ID="UpdatePanel1" runat="Server" UpdateMode="Conditional">
    <ContentTemplate> 
        <asp:ImageButton ID="SignUp" runat="server" AlternateText="SignUp"
            class="tips_button" ImageUrl="/~/myimage.ashx"
            onclick="SignUp_Click" ToolTip="Find" /> 
    </ContentTemplate>
    <Triggers> 
        <asp:AsyncPostBackTrigger ControlID="SignUp" EventName="Click" /> 
    </Triggers> 
</asp:UpdatePanel>

Ответы [ 2 ]

1 голос
/ 22 октября 2011

Вам не нужна настройка Trigger для каких-либо элементов управления в UpdatePanel ContentTemplate.По умолчанию все элементы управления будут отправлены с использованием ajax, а затем будет отображено новое содержимое в ContentTemplate.

У вас есть Trigger настройка для элемента управления, который уже находится внутри, что может быть причиной проблемытак что убирай его как то не надо.Вы используете Trigger, когда хотите, чтобы UpdatePanel запускался 'элементом управления вне его ContentTemplate.

Все остальное выглядит хорошо.Убедитесь, что вы настроили SignUp_Click в своем коде и протестируйте его, поставив точку останова на некотором коде в вашем Page_Load, который должен срабатывать каждый раз, когда происходит обратная передача.* в вашем ImageButton выглядит немного странно ... этот лишний слеш в начале может вызвать некоторые проблемы.

0 голосов
/ 21 октября 2011

Попробуйте изменить UpdateMode на Always вместо Conditional.Кроме того, для чего-то такого простого вам не нужно указывать никаких триггеров.Если триггеры не указаны, элемент управления предполагает, что все должно быть асинхронным.

Я бы также проверил, чтобы убедиться, что необходимые валидаторы полей не мешают обратной передаче.Чтобы проверить это, установите для свойства CausesValdiation ImageButton значение false.

...