Столкнулся с проблемой, когда после загрузки страницы некий JS код менял значение в одном из скрытых полей формы. Мне потребовалось отыскать этот JS. К сожалению DevTools Chrome-а не умеет (или я не знаю об этом), ставить breakpoint-ы на изменение данных. Поэтому я решил определить функцию которая будет отлавливать любые попытки изменить данные и внутри нее определить breakpoint. Немного погуглив, я нашел код который мне подошел..
<input id="lala" type="text" /> <script> var inp = document.getElementById( 'lala' ); Object.defineProperty( inp, "value", { configurable: true, enumerable: true, set: function( value ) { alert( "Попытка назначить: " + value ); this.setAttribute( "value", value ); }, get: function() { return this.getAttribute( "value" ); } }); inp.value = "test"; alert( inp.value ); </script>
Источник: https://javascript.ru/forum/misc/30240-povesit-setter-na-input-value.html