jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – Rails 3.1与资产管道,link_to:确认消息显示两次?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,所以我看到 this question关于这个问题是由jQuery或Prototype的多个链接引起的,但我可以确认我只是在整个页面链接到jQuery一次。我的问题是这样的:当我有一个link_to确认删除,弹出显示两次。以下是我的模板中适用的代码(用Slim编写):
link_to('Destroy',depot_path(@depot.id),:confirm => "Really?",:method => :Delete)

我正在运行Rails 3.1.0,资产管道打开,宝石“jquery-rails”在我的Gemfile中,下面是我的application.js文件(由资源管道的Sprockets编译)。

//= require jquery
//= require jquery_ujs
//= require 'underscore'
//= require 'BACkbone'

我的/ vendor / assets / javascripts /目录中有underscore.js和BACkbone.js,链轮似乎找到了。我还搜索链接服务的application.js文件,而jQuery只有一次,而jQuery UJS只有一次。当我的页面渲染时,这是我的头像(我已经省略了显示的csrf-token值,FWIW)。

<head>
  <Meta content="text/html; charset=utf-8" http-equiv="content-type">
  <title>Administration</title>
  <link href="/assets/screen.css" media="screen" rel="stylesheet" type="text/css" />
  <script src="/assets/application.js" type="text/javascript"></script>
  <Meta content="authenticity_token" name="csrf-param" />
  <Meta content="--token--omitted--" name="csrf-token" />
  <script src="/assets/common/subdata.js" type="text/javascript"></script>
  <link href="/assets/show.css" media="screen" rel="stylesheet" type="text/css" />
</head>

subdata.js中有一些BACkbone特定的代码;没有什么可以选择再次包含jQuery。那么什么交易呢?我的项目中没有任何一个额外的jQuery文件;它都通过jquery-rails gem进行管理。是什么原因造成的:确认@L_618_23@开火两次?

编辑:我以前在Rails 3.1的RC5上看到这个,但现在我也在Rails 3.1中看到它。

解决方法

这发生在我身上,因为我已经运行了rake资产:在我的开发环境中预编译,导致public / assets / application.js被创建。这使得/assets/application.js的请求由这个静态文件提供,该文件包含在public / assets / application.js中编译的所有// require脚本,从而使它们再次被加载。

在开发模式<%= javascript_include_tag“应用程序”%>将扩展到多个< script>标签一个为/ require要求的每个文件,还有一个仅包含自己的内容的application.js。

解决方案是手动删除整个公共/资产目录,或使用资产:clean rake任务。这将导致脚本文件再次动态。

大佬总结

以上是大佬教程为你收集整理的jquery – Rails 3.1与资产管道,link_to:确认消息显示两次?全部内容,希望文章能够帮你解决jquery – Rails 3.1与资产管道,link_to:确认消息显示两次?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。