我正在設置jquery + rails應用程序。包括jquery似乎沒有問題。最後好不容易生成的源文件看起來像--->未在Rails 3項目中執行的Jquery代碼
<!DOCTYPE html>
<html>
<head>
<title>CodeAliker</title>
<link href="/assets/application.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/bootstrap.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>
<meta content="authenticity_token" name="csrf-param" />
<meta content="EIklYq2jXM/BSsN+M0V5x9GoFA+WjwYuD0kuLBkjIUg=" name="csrf-token" />
</head>
<body>
<script src="/assets/dashboard.js?body=1" type="text/javascript"></script>
<link href="/assets/dashboard.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<div class="topbar">
<div class="fill">
<div class="container">
<a class="brand" href="#">CodeAliker</a>
<ul class="nav">
<li class="active" name='useritem'>
<a href="#user" >+myth</a>
</li>
<li name='dashitem'>
<a href="#panel">Dashboard</a>
</li>
<li>
<a href="/about.html">About</a>
</li>
<li class="nav secondary">
<a href="/getout">SignOut</a>
<li>
</ul>
</div>
</div>
</div>
<div id="bodydiv">
<div class="container-fluid">
<div class="sidebar">
<table class="bordered-table">
<thead>
<tr>
<th>BATCH List</th>
</tr>
</thead>
<tbody id='table-body'>
<tr>
<td><a href="#">samplebatch</a></th>
</tr>
</tbody>
</table>
</div>
<div class="content">
...
</div>
</div>
</div>
</body>
</html>
我在文件dashboard.js jQuery代碼看起來像 - >
$('ul.nav li').each(function(){
console.log('Iterating');
});
$('a').bind('click', function() {
alert('Unobtrusive!');
});
的代碼不會被執行,爲什麼呢?然而,在dashscript.js上插入一個簡單的console.log()打印!
爲什麼你在'body'裏放一個'script'和'link'?只把所有東西都放在'頭部'。並嘗試。 – 2012-02-07 08:03:09
它是控制器特定的腳本而不是應用程序範圍的腳本,因此我將它們包含在我的'dashboard.html.erb'文件中。生成的代碼沒有把它放在頭上。 :| – 2012-02-07 08:14:22
dashboard.js是否正在下載?你可以檢查小提琴手。另外,你已經把查詢字符串刷新腳本,嘗試增加它到body = 2。您可能已更新腳本,並且您的瀏覽器已緩存舊版本。 – 2012-02-07 08:18:57