У меня есть проблема, интересно, может ли это прекрасное сообщество помочь мне.
У меня есть веб-форма asp. net (с использованием кода vb. net), на одной из моих форм есть сетка данных. Каждая запись может иметь различный статус, и каждая запись может быть выбрана с помощью флажка. В нижней части таблицы у меня есть выпадающий список возможных действий, которые могут предпринять пользователи, эти действия будут направлены против выбранных записей и кнопка для вызова выбранного действия.
Теперь у меня есть проблема, и меня это раздражает, потому что из-за разницы в статусе, прежде чем я завершу выбранное действие, мне нужно проверить, могут ли выбранные записи выполнять такое действие.
Пример
Я выбираю записи 1,2,3,4,5. Действие, которое я выбираю, заключается в загрузке в формате CSV, однако можно загружать только разблокированные записи, поэтому в моем примере разблокированы только записи 1,3,5. Это означает, что я могу скачать только 1,3,5, а не записи 2,4. После загрузки я хочу отметить запись о том, что она была загружена, и обновить sh сетку.
Я выполнил это, найдя записи для загрузки (aka 1,3,5), создайте CSV (или XML, поскольку это тоже одно из действий) в виде строки, отметьте записи 1,3,5 как загруженные, обновите sh сетку и затем я вызову скрытую кнопку в форме, которая фактически загрузит данные.
If Not ViewState("Data") Is Nothing Then
Response.Clear()
Response.ClearHeaders()
Response.Buffer = True
Response.ContentEncoding = Encoding.UTF8
Response.ContentType = IIf(ViewState("ExportType").ToString() = SharedApplication.ExportedType.XML, "application/xml", "text/csv")
Response.AppendHeader("Content-Disposition", String.Format("attachment;filename={0}", "records-" & "." & ViewState("ExportType").ToString()))
Response.Write(ViewState("Data"))
HttpContext.Current.Response.Flush()
HttpContext.Current.Response.SuppressContent = True
HttpContext.Current.ApplicationInstance.CompleteRequest()
ViewState("Data") = Nothing
End If
Вышеуказанные данные загружаются, для вызова кнопки загрузки я использую javascript, чтобы выполнить обратную передачу по событию щелчка скрытой кнопки.
Однако у меня возникает проблема перед тем, как загрузить данные, я хочу добавить окно подтверждения, что-то, чтобы сказать «Только 3 из 5 записей будут загружены, вы хотите продолжить». Да, продолжая загрузку, и Нет, чтобы прекратить действие. Как я go об этом. Я перепробовал все виды техник, но не могу понять это.
Я попытался добавить подтверждение возврата на скрытую кнопку в событии onlcientclik, но оно никогда не срабатывает. Это работает, если вы действительно нажимаете на кнопку, но не тогда, когда я делаю обратную передачу на ее нажатие через JS.
Шкаф, который я могу найти, использует registeronsubmit в коде позади.
ClientScript.RegisterOnSubmitStatement(btnHidden.GetType, "confirm", "return confirm('Are you sure?');")
Но это срабатывает постоянно, даже когда мы нажимаем на другую кнопку. Я попытался добавить еще одну скрытую кнопку, надеясь, что смогу добавить клик клиента, чтобы показать окно подтверждения, но это не работает.
У кого-нибудь есть идея, у меня есть стадо возможного создания всплывающего окна для отображения окна сообщения, но как мне захватить, если мой код необходимо продолжить.