22.09.2015, 21:12 | #1 |
Участник
|
Двойной вызов функции
Всем доброго вечера. Опять нуждаюсь в Вашем совете.
В срм 2013 и срм 2015 (не знаю как такое прошляпил) заметил такую особенность. Пример: onLoad = function(){ Xrm.Page.getAttribute(name).addOnChange(getNameValue); Xrm.Page.data.entity.addOnSave(saveFunction); } getNameValue = function(){ alert(Xrm.Page.getAttribute(name).getValue()); } saveFunction = function(){ alert("!!!!!!"); } И так, в чем вопрос. Я не вешаю каждую функцию на отдельное событие. Завешиваю только функцию onLoad на загрузку формы. Все остальные обработчики цепляются в самой функции. И все отлично работает, но вот на что наткнулся. Когда создаем новую запись, и сохраняем ее не закрывая , то выполняется функция saveFunction, что логично, но почему то после сохранения, повторно отрабатывает функция onLoad и завешивает по еще одному обработчику на поле "name" и на сохранение формы. Что приводит к двойному вызову функций (обеих) при дальнейшем изменении поля и сохранении формы. НО когда запись сразу закрыть (после первого сохранения) а потом открыть повторно, такого артефакта не наблюдается. Кто нибудь сталкивался с подобным??? Буду очень благодарен за совет, а то уж сегодня всю голову себе проел этим. Спасибо! |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|