2013-05-09 114 views
0

我無法得到此顯示作爲函數參數提供的警報。我已經與示例進行了比較,無法看到導致它無法工作的問題。我已經在下面列出了我的html和JavaScript,任何幫助我出錯的地方都會非常感激地收到。謝謝JavaScript函數問題

HTML:

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Untitled Document</title> 
<script src="http://code.jquery.com/jquery.js"></script> 
<script src="testjs.js"></script> 
</head> 
<body> 
<div id = "testbed"> 
<a id = "testlink" href = "#number1">Test click</a> 
</div> 
</body> 
</html> 

的JavaScript:

$(document).ready(function() { 

$.fn.newmodalcontrols = function(modelspec) { 
alert(modelspec);  
} // end newmodalcontrols 

$('#testlink').click(function() { 
    $(this).parent().newmodelcontrols('number1'); 
}); // end testlink click function 

}); // end ready 
+0

JavaScript控制檯中報告的任何錯誤(大多數瀏覽器中的「F12」)? – 2013-05-09 18:16:40

+0

是的,它表示以下...未捕獲的類型錯誤:對象[對象對象]沒有方法'newmodelcontrols'testjs.js:10 (匿名函數)testjs.js:10 jQuery.event.dispatch jquery.js:3074 elemData.handle – Ant 2013-05-09 18:19:44

+0

請檢查testjs.js是否正確加載 – 2013-05-09 18:20:03

回答

1

你只是有一個錯字。將newmodelcontrols更改爲newmodalcontrols。

的JavaScript

$(document).ready(function() { 

    $.fn.newmodalcontrols = function (modelspec) { 
     alert(modelspec); 
    } 

    $('#testlink').click(function() { 
     $(this).parent().newmodalcontrols('number1'); 
    }); 

}); 

更新:增加了jsfiddle example

+0

Haha需要花費數小時的時間,現在感覺很傻。謝謝:) – Ant 2013-05-09 18:23:32

1

你有一個錯字:newmodalcontrolsnewmodelcontrols是不等價的(注意a/e):corrected the typo, in a JS Fiddle demo

$(document).ready(function() { 

    $.fn.newmodalcontrols = function (modelspec) { 
     alert(modelspec); 
    } // end newmodalcontrols 
     //   ^- Should be an 'e' 

    $('#testlink').click(function() { 
     $(this).parent().newmodelcontrols('number1'); 
     //      ^- Or this should be an 'a' 
    }); // end testlink click function 

}); // end ready 

順便說一下,鉻,這將是在Web Inspector的JavaScript控制檯,如下所示:

Uncaught TypeError: Object [object Object] has no method 'newmodelcontrols' 

這應該引起您注意您正在使用/定義的方法的名稱。

+0

謝謝你的幫助,解決問題和學到的東西。 A – Ant 2013-05-09 18:29:03

+0

@Ant:完全沒問題,我很高興得到了幫助! – 2013-05-09 18:32:40

0

你有一個錯字。

退房小提琴

http://jsfiddle.net/AUEZJ/

$(文件)。就緒(函數(){

$.fn.newmodelcontrols = function (modelspec) { 
    alert(modelspec); 
}; // end newmodalcontrols 


$('#testlink').click(function() { 
    $(this).parent().newmodelcontrols('number1'); 
}); // end testlink click function 

}); // end ready

+0

是啊有一種類型 – 2013-05-09 18:24:49