2014-11-08 95 views
1

任何嵌入視圖的javascript都不會觸發。一個虛擬的示例代碼MVC 5 javascript not firing

<a href="javascript:getView();" name="something" id="something">click me </a> 

<div id="AddAY"></div> 


<script type="text\javascript"> 
    function getView() 
    { 
       $('#AddAY').load('/schools/details/2'); 
    }; 


</script> 

當頁面呈現的結果是:

<a href="javascript:getView();" name="something" id="something">click me</a> 

<div id="AddAY"></div> 


<script type="text\javascript"> 
    function getView() 
    { 
       $('#AddAY').load('/schools/details/2'); 
    }; 


</script> 


    <script src="/Scripts/jquery-2.1.1.js"></script> 

    <script src="/Scripts/jquery-ui-1.11.1.js"></script> 

    <script src="/Scripts/bootstrap.js"></script> 
<script src="/Scripts/respond.js"></script> 

,當你點擊鏈接,它什麼都不做。

+0

應jQuery的源代碼的函數之前宣佈這個:?$(‘#AddAY’ ).load('/ schools/details/2');直到這個(和其他文件)被渲染。 – 2014-11-08 08:14:50

+0

@ADASein編號'getView'僅在鏈接被點擊時調用。 – dfsq 2014-11-08 08:54:43

+0

這是基本的Web編程:將jQuery庫移動到頂部,以便瀏覽器可以解析該函數​​。 – 2014-11-08 08:58:05

回答

0

感謝所有爲有用的提示。我會考慮寫出更好的代碼。但經過兩天的努力,結果竟然是一個愚蠢的TYPO。

我的方式發現它可能對其他人有幫助。

我把代碼放在另一個項目中,javascript被解僱了。只是爲了排除(雖然我沒有線索),但這並不是我項目中的某種配置問題。

在另一個項目中,它確實觸發了,這讓我相信它實際上是一個配置問題。 :-(併發送給我錯誤的軌跡

我最終將兩個屏幕上的代碼逐行比較,逐行比較輸出(html頁面的源代碼),但沒有找到任何不同之處,直到在某個特定的時刻,我注意到在一個項目中比另一個項目更富有色彩,這是一個重要的暗示,可能我認爲「爲什麼智能感知不會回升?」而且我得出的結論是「 。因爲IntelliSense不知道它的JavaScript」然後我注意到愚蠢TYPO A \它應該是/

<script type="text\javascript"> 
<script type="text/javascript"> 
+0

你可以完全刪除'type'並且仍然可以工作。 – beautifulcoder 2014-11-09 03:09:36

+0

thx的提示 – BrilBroeder 2014-11-09 11:23:18

0

而不是把錨標記的HREF你的函數(JavaScript的:getView();)的值與此替換代碼:

<a href="#" name="something" id="myFunction">click me </a> 
 

 
<div id="AddAY"></div> 
 

 

 
<script type="text\javascript"> 
 
    
 
    $('#myFunction').click(function(){ 
 

 
     $('#AddAY').load('/schools/details/2'); 
 
    
 
    }); 
 
    
 

 

 
</script>

jsfiddle demo