簡體   English   中英

jQuery內部具有爭論的功能

[英]Function with arguements inside jQuery

有人可以幫忙為什么這不起作用。

HTML代碼:

<li><a href="#" onclick="adminDBDisplay(ownorg);" >OOrg</a></li>
<li><a href="#" onclick="adminDBDisplay(twoorg);" >Twoorg</a></li>

jQuery的:

$(document).ready(function(){
    function adminDBDisplay(db){
        alert("Got into function" +db);
        // Planning to use jQuery Ajax here
    } 
});

使用Firebug時,出現以下錯誤:

"ReferenceError: adminDBDisplay is not defined"

有人可以幫我為什么這不起作用。 我如何解決這個問題。 如果有更好的方法,請告訴我。 謝謝你的幫助。

當使用function name() {...}定義函數時,如果您已經在函數內部,則只能在該函數中進行定義。

函數定義不應包裝在.ready() ,因為它們在被調用之前不會運行。 刪除.ready()包裝器,您應該一切順利。

以下表示法:

$(function() { ... });

本身是一個將function() {...}綁定到document.ready function() {...} document.ready運行函數adminDBDisplay(db){...}僅在運行時定義該函數,而實際上並未調用它。 為了調用它,您需要adminDBDisplay('parameter');

為了有效地實現它,您需要按如下所示將其放置在頁面的正文中:

<head>
<script src="yourversionofjquery.js"></script>
<script>
//Defining your function for calling later
function adminDBDisplay(db)
{
    alert("Got into function" +db);
    //Planning to use Jquery Ajax here
}
</script>
</head>
<body>
<script>
//Binding an anonymous function to document.ready
$(function () {
        //Do whatever you want after document.ready
    });
</script>
<div> rest of body</div>
</body>

讓我知道這是否有意義/修復了您的錯誤。

編輯:同樣,在“ ownorg”周圍加上“單引號”,例如“ adminDBDisplay('ownorg');” 否則,它正在尋找一個名為ownorg的變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM