Сообщение от 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()