为什么我的JS jQuery不起作用?

时间:2011-10-28 18:46:24

标签: jquery ruby-on-rails-3 jquery-ui

尝试在我的rails 3.1.1应用程序中设置jQuery和jQuery UI

在我看来,我有

<a href="#" id="test_link1">Test</a>

<div id="dialog-modal" title="Basic modal dialog" style="display:none;">
<p>Adding the modal overlay screen makes the dialog look more prominent because it dims out the page content.</p>
</div>

<script type="text/javascript">
  $( "#test_link1" ).click(function() {
     ('#dialog-modal').dialog();
  });

它不起作用。当我检查时,我得到了

storages:105TypeError: 'undefined' is not a function (evaluating '('#dialog-modal').show()')
        });

在application.js中。文件已加载

//= require jquery
//= require jquery_ujs
//= require jquery-ui.min

3 个答案:

答案 0 :(得分:4)

('#dialog-modal').dialog();更改为

$("#dialog-modal").dialog();

你忘了jQuery($),所以没有jQuery对象可以使用。

答案 1 :(得分:3)

您需要添加美元符号:

$('#dialog-modal').dialog();

答案 2 :(得分:2)

将代码包装在ready handler中:

$(function(){
  $( "#test_link1" ).click(function() {
     $('#dialog-modal').dialog();
  });
});