Javascript Coffeescript ajax失败

Javascript Coffeescript ajax失败,javascript,ajax,coffeescript,Javascript,Ajax,Coffeescript,我有这样的咖啡脚本 $(document).ready -> $('.rpt-date > a').click -> projectName = $(this).parent().parent().prev().text() date = $(this).text() urlStr = '/monitor/show?project=' + projectName + '&date=' + date alert(urlStr)

我有这样的咖啡脚本

$(document).ready ->
  $('.rpt-date > a').click ->
    projectName = $(this).parent().parent().prev().text()
    date = $(this).text()
    urlStr = '/monitor/show?project=' + projectName + '&date=' + date
    alert(urlStr)
    # $.get urlStr, (data) ->
    #   $('#right-column').append("ajax success")
并编译成js,如下所示

(function() {
  $(document).ready(function() {
    return $('.rpt-date > a').click(function() {
      var date, projectName, urlStr;
      projectName = $(this).parent().parent().prev().text();
      date = $(this).text();
      urlStr = '/monitor/show?project=' + projectName + '&date=' + date;
      return alert(urlStr);
    });
  });

}).call(this);
(function() {
  $(document).ready(function() {
    return $('.rpt-date > a').click(function() {
      var date, projectName, urlStr;
      projectName = $(this).parent().parent().prev().text();
      date = $(this).text();
      urlStr = '/monitor/show?project=' + projectName + '&date=' + date;
      return $.get(urlStr, function(data) {
        return $('#right-column').append("ajax success");
      });
    });
  });

}).call(this);
一切正常。当我单击“.rpt data>a”标记时,会弹出一个警报窗口

但是当我稍微修改一下咖啡脚本时(注释警报,取消注释$.get)

它编译为js,如下所示

(function() {
  $(document).ready(function() {
    return $('.rpt-date > a').click(function() {
      var date, projectName, urlStr;
      projectName = $(this).parent().parent().prev().text();
      date = $(this).text();
      urlStr = '/monitor/show?project=' + projectName + '&date=' + date;
      return alert(urlStr);
    });
  });

}).call(this);
(function() {
  $(document).ready(function() {
    return $('.rpt-date > a').click(function() {
      var date, projectName, urlStr;
      projectName = $(this).parent().parent().prev().text();
      date = $(this).text();
      urlStr = '/monitor/show?project=' + projectName + '&date=' + date;
      return $.get(urlStr, function(data) {
        return $('#right-column').append("ajax success");
      });
    });
  });

}).call(this);
它无法触发对“/monitor/show?xxxxxxx”的http请求

我使用chrome开发者工具跟踪代码,发现
return$.get(urlStr,函数(数据){…
没有执行。它被跳过了

我在谷歌上搜索了很多。有些人说是“windows产品线末尾问题”,有些人说是“空格或制表符问题”。我两个都试过了,但都没用


有什么想法吗?谢谢!

你没有取消点击事件谢谢@epascarello。我是JS和Coffeescript的新手。按照你的指示,我改为,它成功了。现在我知道哪里错了。我会调查“取消事件”但奇怪的是,这种ajax代码有时在不取消单击事件的情况下工作。你知道为什么会发生这种情况吗?