- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
作为上周问题中的 I mentioned ,我正在使用 @coreyward 的 excellent walk-through 来处理 Rails 3 中的模式编辑窗口。但是,我对 Coffeescript 来说是一个相对新手,并且我在使用以下代码时遇到了问题应该在成功的 Ajax 响应上显示模式窗口。这是相关函数(取自 Corey's gist ):
$ ->
$modal = $('#modal')
$modal_close = $modal.find('.close')
$modal_container = $('#modal-container')
# Handle modal links with the data-remote attribute
$(document).on 'ajax:success', 'a[data-remote]', (xhr, data, status) ->
$modal
.html(data)
.prepend($modal_close)
.css('top', $(window).scrollTop() + 40)
.show()
$modal_container.show();
$(document).on 'click', '#modal .close', ->
$modal_container.hide()
$modal.hide()
false
我已经确定函数内的所有代码都可以工作;它只是永远不会被调用。我可以在 Chrome 网络面板中看到 Ajax 查询,并验证它是否返回正确的响应。
我简化了代码以在 ajax:success
事件上弹出警报:
$(document).on 'ajax:success', () ->
alert('Ajax success event!')
...什么也没有。所以我认为“ajax:success”事件永远不会发生。
为了提取重复问题的最简单的代码,我使用以下代码设置了 this jsFiddle:
<a href="javascript:$.ajax('/echo/js/?delay=2&js=WHEEEEE!');" data-remote="true">Edit</a>
$(document).on 'ajax:success', () ->
alert('Ajax success event!')
...是的。没有什么。 jsFiddle Ajax echo 返回它应该返回的内容,但该函数永远不会被调用。所以我对 .on('ajax:success')
做了一些错误的事情。 (这与 this question 是相反的问题,所以这个答案没有帮助。 This question ,关于响应的 mime 类型,看起来很有希望,但没有解释为什么 jsFiddle 不起作用,因为那不起作用不要碰我的 Controller 。)这是什么?
预计到达时间:我可能应该提到这里涉及的堆栈。 捂脸
最佳答案
好的,明白了。我需要进行两项更改:
text/json
MIME 类型。我之前的操作如下所示: def edit
respond_to do |format|
format.js
format.html
end
end
为了获得 text/json
响应,我得到了以下结果:
def edit
respond_to do |format|
format.js { render :json => { :html => render_to_string('edit')}, :content_type => 'text/json' }
format.html
end
end
该更改触发了 ajax:success
,因此运行了开放模式函数。
data.html
中,而不仅仅是 data
,因此我需要调整 modal.js.coffee
> 将标记实际放入模态中: .html(data.html) // instead of .html(data)
关于jquery - Coffeescript 不处理 ajax :success,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13362648/
问题:假设我们有一个名为success 的C++ 字符串。 &success 和 success& 有什么区别? 这题是我期中复习的,我理解&success是获取对象的地址。但我不确定 success
我正在阅读 gearman 代码的手册页( http://manpages.ubuntu.com/manpages/precise/man3/gearman_success.3.html )。他们有两
在 Angular 中,[class]="'success'" 和 class="success" 有区别吗? 例如: ... 或 ... 如果同时使用 IIUC 后者会导致替换前者,所以我想更好
当我查看日志文件时 D:\SAS\XXX\Lev1\SASMain\BatchServer\Logs 我看到了这两行 NOTE: Libref TESTLIB successfully assigne
我正在努力完成这项工作: $http.post('/route/path', {'username': $scope.threadedUsers[currentIndex].name}). s
我正在尝试设置协议(protocol)来处理我的 javascript 函数中的成功和错误,但是当函数成功时它似乎并不合作。我收到以下错误: Failed with: TypeError: Objec
在 typescript 中,我有一个 DataAccess 类,以便所有 Ajax 调用都通过单个对象进行路由,以节省应用程序中许多地方的代码重复。 在使用这种方法时,我需要使用回调将响应返回到调用
我已经用 Spring Security 3.0.2 实现了一个登录-注销系统,一切都很好,但是对于这一点:在我添加了一个带有 invalid-session-url 属性的 session 管理标签
运行命令pip install rpy2会导致以下输出和错误消息:。我按照另一篇Stackoverflow帖子上的说明卸载并重新安装了R和相关目录,但得到了相同的错误。我还尝试安装以前版本的rpy2,
我最近在项目的测试目标中添加了一个新的单元测试,当我点击产品 > 测试时,Xcode 说“测试成功”。我相当确定测试应该失败,因为被测试的方法尚未实现。我在测试中添加了一个断点,但从未到达过;测试仍然
我正在编写一个程序来创建一个AD帐户并启用Exchange邮箱,并且从中得到一些奇怪的行为。 首先,尽管它成功创建了AD用户,但由于“找不到MyPath/先生示例”,因此无法启用邮箱。我认为这是由于A
在cd_deployer_conf文件中我们设置了Cleanup="false,这样传输包在发布后不会被删除,但是我们可以看到单个发布操作有3个不同的包喜欢 tcm_0-264891-66560.CO
我正在使用 $().each() 循环访问一些项目。我想确保这段脚本之后的操作仅在 each() 完成时执行。 示例: $('something').each(function() { // do
我正在尝试创建一个 ping 洪水程序,它将目标 IP 地址和广播 IP 地址作为参数。该程序将向广播地址发送 icmp echo 数据包,并将受害者的 IP 地址作为源。网络上所有收到数据包的主机都
我正在实现一个虚拟 LTE EPC 设置,其模块 (HSS) 之一需要 mysql 数据库。创建后,我必须运行该模块,但收到屏幕截图 1 中所示的错误。附:我对这个东西很陌生 最佳答案 您必须修改您的
#include #include #include #include #include #include #include #include #include void error(cha
我的基本代码如下, fd = open("test.file", O_RDONLY); if (read(fd, &tempch, 1) < 1) { perror("F
更新 :这似乎是在 Pipeline: Declarative 中引入的错误插件版本 1.3.5 - 降级到 1.3.4.1解决了这个问题。票证创建于: https://issues.jenkins-
我最近在 jQuery 网站上看到了弃用通知。 Deprecation Notice: The jqXHR.success(), jqXHR.error(), and jqXHR.complete()
我假设调用 status.success() 会终止后台作业。但是,当我运行它时,我仍然看到第二条日志消息: Parse.Cloud.job("Tester", function (request,
我是一名优秀的程序员,十分优秀!