Показать сообщение отдельно
  #12 (permalink)  
Старый 21.02.2014, 12:58
Новичок на форуме
Отправить личное сообщение для Rustam Посмотреть профиль Найти все сообщения от Rustam
 
Регистрация: 13.12.2012
Сообщений: 2

Сообщение от Deff Посмотреть сообщение
1. Тупой бесконечный цикл проверяющий наличие ответа
2. Кто мешает изменить логику, и запускать SaveAction() по завершении
диалога модалки ?
1. То ли я тупой, то ли это не работает То есть получить ответ пользователя - не проблема. Проблема дождаться этого ответа, так как метод PreSaveAction() просто прет вперед и возвращает true/false. "Остановить" его у меня получается только confirm'ом или setTimeout'ом. Но confrim не позволяет мне форматировать сообщение, а setTimeout не дает нужной гибкости/отзывчивости.
2) Sharepoint при попытке сохранить элемент вызывает метод PreSaveItem, который вызывает метод PreSaveAction (SaveAction - это он и есть, ошибся немного) если он создан. Таким образом программисту дают сделать валидацию, т.е. достаточно написать свой метод PreSaveAction. Но я не могу изменить порядок его вызова, его аргументы и т.д.


Сообщение от kostyanet Посмотреть сообщение
confirm это модальный диалог, а ваш хтмль никакого отношения к диалоговым окнам не имеет, потому что не окно, а просто кусок хтмл.

Что касается бывших методов совмещения то за злоупотребления очевидно их забанили:





Такая тема уже была, когда некий профессор заявил что на вебе ничего мониторить не надо. Не бывает типа тут 1 раз в секунду опрос кнопки.

Как видите бывает. Делается на самом деле элементарно через setInterval()
"мой хтмль" - самый настоящий модальный диалог. И он не deprecated. Просто это "встроенный" диалог sharepoint'a. Полное наименование SP.UI.ModalDialog.showModalDialog. Он может открывать как "настоящую" страницу, так и просто кусок html


Спасибо всем за помощь. Чуда не случилось - javascript не обмануть. Придется подменять кнопку и костылями изменять порядок вызова PreSaveAction()

Последний раз редактировалось Rustam, 21.02.2014 в 13:09.
Ответить с цитированием