Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何调试隐藏输入字段值的JavaScript修改?_Javascript_Jquery_Angularjs_Laravel_Debugging - Fatal编程技术网

如何调试隐藏输入字段值的JavaScript修改?

如何调试隐藏输入字段值的JavaScript修改?,javascript,jquery,angularjs,laravel,debugging,Javascript,Jquery,Angularjs,Laravel,Debugging,我有一个带有角度JS前端的Laravel5.2应用程序。我遇到了一个问题,它首先表现为CSRF令牌不匹配异常。进一步调试,我发现,虽然包含CSRF值的隐藏输入字段被正确生成和填充,但在页面加载期间,该值有时会从DOM中删除 这是原始DOM元素的外观: <input type="hidden" name="_token" value="foo-bar"> 显然,进行修改的代码必须是JavaScript。我试图搜索与输入类型和名称相关的DOM绑定,但结果为空。类似地,似乎没有查找父

我有一个带有角度JS前端的Laravel5.2应用程序。我遇到了一个问题,它首先表现为CSRF令牌不匹配异常。进一步调试,我发现,虽然包含CSRF值的隐藏输入字段被正确生成和填充,但在页面加载期间,该值有时会从DOM中删除

这是原始DOM元素的外观:

<input type="hidden" name="_token" value="foo-bar">

显然,进行修改的代码必须是JavaScript。我试图搜索与输入类型和名称相关的DOM绑定,但结果为空。类似地,似乎没有查找父DOM元素的绑定

然后我注意到了一件更奇怪的事情:我可以将该字段重命名为不同的“name”属性,甚至可以更改字段类型(比如说“text”),并且仍然会删除值。我发现任何21个或更多字符的值都会被擦除。保留20个字符的值

我已经检查了每一行自定义JS代码,没有找到罪魁祸首。没有对字段名或值长度的引用

安装了很多composer软件包,有很多不同的供应商,还有Angular和jQuery UI,我无法合理地搜索大量的JS,因为我实际上没有什么可搜索的(甚至无法搜索20/21的值,因为
grep
显示了数千个结果)

Chrome允许我在输入元素上设置一个断点,并说当属性更改时应该触发断点。。。除非它不会触发


关于如何追踪问题根源还有其他想法吗?

好吧,一天后我终于找到了问题所在:“Adblock Plus for YouTube”扩展安装在我的Chrome浏览器中。这个扩展已经安装了很多年,但直到现在才随机开始引起问题。禁用它会修复问题,重新启用它会重新引入问题


通过消除过程发现的。仍然没有很好的方法来调试我描述的问题。

我不能确切地理解问题是什么,但看起来您只是想知道是什么改变了隐藏输入的值,对吗?尝试将事件侦听器绑定到输入并检查
事件
参数@塞吉奥伦-是的,没错。我将回顾jQuery的事件侦听器,看看是否有办法查看绑定到元素的所有内容。。。我想我记得以前做过一次。谢谢你的提示!我已经看过了,没有任何事件绑定到该元素。所以有些东西正在搜索它,修改它的值(删除它),然后继续。。。