在Rails中使用remote:true在Chrome中有效,但在Safari中无效——从js.erb文件调用succe
Using remote: true in Rails is working in Chrome, but not in Safari - seems to be an issue in calling the success function from the js.erb file
我有一个嵌套表单(使用nested_form gem),我在上面调用remote:true。
= nested_form_for @shopping_list, :remote => true, :html => {:class => "shopping-list- form"} do |f|
我将其链接到控制器中的创建操作,成功函数从create.js.erb文件返回以下内容:
closeShoppingListForm();
$("#submit-success").delay(500).fadeIn(500);
$("#submit-success").delay(2000).fadeOut(500);
$.getScript(this.href);
return false;
Chrome的一切都很顺利-还没有测试Firefox。Safari以前也遇到过这个问题,但上次它是一个缺少结尾";"的函数——从js.erb文件中获取成功函数不是问题。
这是closeShoppingListForm函数页面的js文件中的代码——它完全按照听起来的方式——关闭了一堆东西:
function closeShoppingListForm() {
$("#shopping-list-form").hide();
$("#running-total").hide();
$("#total").hide();
$("#create-shopping-list").fadeIn(500);
$(".icon-remove").trigger("click");
$("#shopping_list_name").val('');
$("#total").html('');
inventoryItemsQuantities = new Array();
};
我在谷歌上搜索SO已经有一段时间了,但现在是时候提交它了,看看是否有其他人遇到过这个问题。任何帮助都是最受欢迎的——非常感谢您的关注。
如果需要任何其他代码片段,请告诉我。
谢谢!
简单的修复…我们看了一会儿,发现只是我走得太快,在.getScript…之后抛出了"return false"
也许这将帮助其他人不犯同样的错误。
closeShoppingListForm();
$("#submit-success").delay(500).fadeIn(500);
$("#submit-success").delay(2000).fadeOut(500);
$.getScript(this.href);
相关文章:
- JS代码在jsbin中有效,在jsfiddle或Chrome/Safari中无效
- 为什么form.submit()在使用jQuery时有效,而在使用普通JS时无效
- 无效的非字符串/缓冲区块Node.js
- fancydropdown js:IE8 中的参数无效
- 高图表中的参数行 80 无效.js
- 在Rails中使用remote:true在Chrome中有效,但在Safari中无效——从js.erb文件调用succe
- js.erb文件中提供给RegExp构造函数的标志无效
- 正则表达式在浏览器上有效,但在Node.js中无效
- 异步HTTP(ajax)请求在脚本标记中有效,但在js文件中无效
- backbone.js抛出无效对象初始值设定项错误,这是一个非常简单的错误
- base64字符串使用Node.JS被写为无效图像
- 如何使用node.js修复Twilio中无效的内容类型标头
- 将节点.js应用程序从 JavaScript 转换为咖啡脚本时出现无效字符和模块
- 相位器.js获取给定的无效相位器状态对象
- 时刻.js“无效日期”计算时差
- JS oAuth 2.0 无效标头
- 敲除.js foreach 绑定有效,但绑定无效
- D3:在 IE9 中使用 d3.js 出现“无效参数”错误
- moment.js在Firefox中给出无效的日期,但在Chrome中没有
- GWT JSNI 方法与本机 JS:“无效标签”