输入值偶尔变化
Input Values Sporadically Changing
我有一个表单,它正在通过jQuery进行修改,以更改某些字段的位置。然后,当提交表单时,它会使用这些字段的位置来确定相对的"位置"值。
不幸的是,它似乎只是偶尔对字段的相对位置进行更改。更具体地说,它似乎只是偶尔注册顶级更改,而第二级更改似乎是一致注册的:
$("#newsletter_form").on("submit", function(e) {
e.preventDefault();
$('.newsletter_category').each(function(i, category) {
$(category).find('.category_position').val(i + 1);
$(category).children('.fields').each(function(j, article) {
$(article).find('.article_position').val(j + 1);
});
});
$("#newsletter_form").unbind('submit').submit();
});
基本上,当调用"submit"事件时,它会遍历每个newsletter_category,更改该newsletter_category的category_position字段相对于任何其他newsletter@category字段的位置,然后更改newsletter_tategory中每篇文章的位置。或者至少这是想要的行为。
我已经评论了最后一行,并确认一切都设置正确,所以我的下一个最佳猜测是存在某种竞争条件。但jQuery每个函数都是同步的,所以我无法想象会发生什么样的竞争条件。
有什么想法吗?
好的,想好了。
对于好奇的人来说,这个问题涉及Rail的Turbolinks。具体来说,Turbolinks没有注册jQuery.ready()事件,因此其中的任何代码都不会被正确注册。有很多方法可以解决这个问题,但如果这对你的应用程序来说不是真正必要的,我会完全删除Turbolinks(就像我做的那样)。
相关文章:
- 偶尔结结巴巴地说“;堆叠的”;translate()上的转换(v4.0.0-alpha40)
- 单击页面上的链接后高度发生变化
- React redux初始化功能,无论状态变化如何
- 角度ng变化或ng点击选择can'不起作用
- 每个选择器的Jquery css颜色都在变化,但字体大小却没有变化
- JS幻灯片与CSS背景颜色变化
- 重新加载页面时Javascript变量发生变化
- 如何获得Bootstrap Datepicker的年和月,因为它在变化
- 如何用jquery替换字符串中可能变化的字符
- 检测数据的变化
- 如何检测和打印变化变量LESS
- 当文本不断变化时,如何避免在按钮内移动文本
- 当数据库中的某些内容发生变化时调用HTTP方法Meteor.js
- jQuery将侦听器的大小调整为只触发宽度的变化
- 根据元素高度和宽度的百分比变化增加或减少字体大小
- 调用$.each()函数时上下文发生变化
- 创建一个不断变化的谷歌涂鸦风格的标题
- Javascript对象颜色动态变化
- 如果在编辑中下拉值发生变化,如何执行功能
- 输入值偶尔变化