jQuery/Coffeescript - 如果有条件

标签 jquery coffeescript

使用 jQuery 和 CoffeeScript,我想在用户按 Enter 时更新 html 元素。我的代码如下所示:

$ ->
  $('p span').live 'keypress', (e) ->      
    if e.keyCode == 13        
      $('div.sidebar-nav ul li a.active').html $(this).attr 'value'

Coffeescript 编译没有任何错误,但代码无法运行。由于某种原因,如果我添加更改代码以使其有效:

$ ->
  $('p span').live 'keypress', (e) ->      
    if e.keyCode == 13
      alert 'some string'
      $('.sidebar-nav a.active').html $(this).attr 'value'

我花了几个小时试图解决这个问题,但仍然一无所获。任何帮助将不胜感激。

最佳答案

$('.sidebar-nav a.active')

不同于...

$('div.sidebar-nav ul li a.active')

在第一种情况下,a.active.sidebar-nav 的后代,并且 .sidebar-nav 下的结构可以可以是任何东西(列表、文章、跨度、字幕,都没关系,只要它在某处)。在第二个中,它是一个列表中的曾孙。我们需要查看您的 HTML 才能确定,但​​它看起来像是错误的选择器...

关于jQuery/Coffeescript - 如果有条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10866265/

相关文章:

javascript - 通过jqgrid在MVC中调用Controller的Action

javascript - scope.$$childHead 是什么?

javascript - 在 switch 语句中捕获组

句子中某个单词的正则表达式

javascript - 使用 Rivet.js 和 Coffeescript 迭代选定字段的模型

javascript - Rails Ajax 远程 Javascript

javascript - jQuery 循环遍历带有类后缀的元素

jquery - 检查几个元素的高度,如果高度 > x,则添加类

javascript - 检查jquery时填充文本输入

javascript - 在 Flot jQuery-plugin 问题中将 javascript 刻度转换为日期