Member 14954403 Ответов: 1

Как я могу получить confirmbuttonextender с помощью AJAX toolkit для открытия окна подтверждения


Я включил в него ScriptManager к странице, а затем прикрепил ConfirmButtonExtender к событию нажатия кнопки. Все отображается правильно в свойствах кнопки, но окно подтверждения не отображается при нажатии на кнопку. При нажатии на кнопку вокруг нее появляется белая рамка, но окна подтверждения нет.

Регистрация находится в верхней части страницы ASP:
<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>

Затем я добавил элементы управления scriptmanager:
<asp:ScriptManager ID="ScriptManager" runat="server" EnablePageMethods="true">
</asp:ScriptManager>>

Вот этот код:
<asp:Button ID="btnGetSelectedReports" runat="server" 

    Text="Download Selected Report(s)" 

    OnClick="btnGetSelectedReports_Click" BackColor="#337AB7" 

    ForeColor="White" Width="500px" Height="36px" Font-Bold="True" 

    Font-Size="Medium" />      
<asp:ConfirmButtonExtender ID="btnGetSelectedReports_ConfirmButtonExtender" 

    runat="server" 

    BehaviorID="btnGetSelectedReports_ConfirmButtonExtender" 

    ConfirmText="The selected report(s) will be written to your folder. Do you wish to continue?" 

    TargetControlID="btnGetSelectedReports" 

    OnClientCancel="btnClearAll_Click()">
</asp:ConfirmButtonExtender>

В файле web.config:
<controls>
    <add tagPrefix="ajaxtoolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolKit"/>
</controls>

Кажется, ничего не работает, он всегда переходит на следующую страницу по редиректу и завершает все шаги до перехода на новую страницу, минуя окно подтверждения.

Я был бы признателен за любую помощь,

Джек

Что я уже пробовал:

Я добавил и изменил несколько способов прикрепления ConfirmButtonExtender.

Я добавил разные строки в файлы web.config.

1 Ответов

Рейтинг:
10

Sandeep Mewara

Я думаю, что вы пропустили добавление ToolkitScriptManager

Вы должны добавить элемент управления ToolkitScriptManager на любую страницу, содержащую элементы управления Ajax Control Toolkit. ToolkitScriptManager выполняет две основные функции.


Во-первых, ToolkitScriptManager обрабатывает разрешение зависимостей. ToolkitScriptManager отвечает за загрузку всех файлов JavaScript, необходимых для набора элементов управления Ajax Control Toolkit.


Во-вторых, ToolkitScriptManager отвечает за оптимизацию JavaScript и файлов. ToolkitScriptManager объединяет, минимизирует, сжимает и кэширует файлы JavaScript, чтобы они могли быть более эффективно доставлены в браузер.


Итак, попробуйте что-то вроде:
<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>
.
.
.
.
.
<span class="style1"><strong><span class="style2">Click on Submit Button and 
Confirm with OK Button</span></strong></span><br />
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
</asp:ToolkitScriptManager>
<br />
<asp:TextBox ID="TextBox1" runat="server" >Test data entered</asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="Submit" onclick="Button1_Click" />

<asp:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" TargetControlID ="Button1" ConfirmText = "Are you want to submit?"></asp:ConfirmButtonExtender>
.
.

Для того, чтобы знать все об этом и образцах, сайт ajaxtoolkit достаточно хорош: Ajax control toolkit ToolkitScriptManager пример с демонстрацией[^]


Member 14954403

Я посмотрел на добавление ToolkitScriptManager, но текущая версия (20.1.0), которую я использую, инструментария управления не включает его, но из того, что я читал, используя доступные расширения AJAX в панели инструментов VS, этого достаточно. Вы рекомендуете найти AJAX ScriptManager?

Sandeep Mewara

Можете ли вы поделиться, где вы читаете "я читаю, используя доступные расширения AJAX в панели инструментов VS достаточно"

Я использовал его в прошлом и точно так же, как сниппет поделился.

Member 14954403

Я прочитал буквально сотни статей, пытаясь разобраться в этом вопросе, так что мне потребуется немного времени, чтобы найти его. Вы знаете, какую версию вы используете?

Member 14954403

Превосходно! Я добавил строку в файл web.config:
&ЛТ;добавить сборку="Аjaxcontroltoolkit, версия=3.5.7.123, культуры=нейтральный, значения PublicKeyToken=28f01b0e84b6d53e"&ГТ;

И отредактировал эту строку:
<элементы управления>
&ЛТ;добавление атрибута tagprefix="ajaxToolkit" пространство имен="Аjaxcontroltoolkit" собрания="Аjaxcontroltoolkit, версия=3.5.7.123, культуры=нейтральный, значения PublicKeyToken=28f01b0e84b6d53e"&ГТ;


Поместите это в верхней части страницы:
&ЛТ;%@ зарегистрировать Assembly="Аjaxcontroltoolkit" пространство имен="Аjaxcontroltoolkit" атрибута tagprefix="АСП" %&ГТ;

Отредактировал это, чтобы соответствовать:
Нажмите на кнопку Отправить и
Подтвердите с помощью кнопки OK

&ЛТ;АСП:toolkitscriptmanager идентификатор="ToolkitScriptManager" атрибут runat="сервер"и GT;

&ЛТ;АСП:кнопка ID="btnGetSelectedReports2" атрибут runat="сервер" текст="скачать выбранный отчет(ы)" функция onclick="btnGetSelectedReports_Click" свойства backcolor="#337AB7" цвет="белый" ширина="500px в"
="" высота="36px" шрифт-жирный="истинный" размер шрифта="средний" usesubmitbehavior="ложных" стиль="цвет:#число 0000ff;выравнивания текста:слева;"&ГТ;
<asp:confirmbuttonextender id="ConfirmButtonExtender1" runat="server" confirmtext="выбранный отчет(ы) будет записан в вашу папку. Вы хотите продолжить?"
= ""targetcontrolid="btnGetSelectedReports2" onclientcancel="btnClearAll_Click()">

И вот, о чудо, появилось мое окно подтверждения!

Спасибо снова,

Джек