2012-03-10 115 views
-2

在我看來,我有這樣的代碼在ASP中使用jQuery剃刀MVC

<a href="#" class="bt_on" title="ON">ON</a> 
<script type="text/javascript">switchOnOff()</script> 

而且我有一個名爲 「ON-OFF-button.js」

$(function switchOnOff() { 
    $("a.bt_off").click(function() { 
    $(this).removeClass().addClass("bt_on"); 
    }); 
    $("a.bt_on").click(function() { 
     $(this).removeClass().addClass("bt_off"); 
    }); 
}); 

文件這個jQuery代碼以及連接到有線這一切我在佈局文件中把這個現在

<script src="@Url.Content("~/Scripts/on-off_button.js")" type="text/javascript"></script> 

當我打開我的網頁,我惱火從Microsoft JScript中的一個例外,說個值e屬性爲空或未定義,而不是函數對象

我錯過了什麼?

謝謝。

+0

你確定功能switchOnOff()在您的代碼中可見查看?你創建它並傳遞給jquery。我認爲你的看法並不明顯。另外我不明白爲什麼你自己調用它時,你已經將它添加到jQuery的document.ready。 – 2012-03-10 12:17:36

回答

0

由於某種原因,您的視圖無法看到.js文件。

試試這個:

<script src="../../Scripts/on-off_button.js" type="text/javascript"></script> 
+0

不,這不是問題,除了我認爲我不應該在我的代碼中放置這樣的靜態Url。 – kbaccouche 2012-03-10 12:28:26

0

使用這種也許解決:

function switchOnOff() { 
$("a .bt_off").click(function() { 
    $(this).removeClass().addClass("bt_on"); 
}); 
$("a .bt_on").click(function() { 
    $(this).removeClass().addClass("bt_off"); 
}); 

} 或

function switchOnOff() { 
$('.bt_off').click(function() { 
    $(this).removeClass().addClass("bt_on"); 
}); 
$('bt_on').click(function() { 
    $(this).removeClass().addClass("bt_off"); 
}); 

}