2016-01-26 127 views
0

我爲我的項目創建了一個新的JQuery小部件,我需要在加載頁面時調用該方法。如何在頁面加載或jQuery中刷新頁面時調用Jquery方法

這裏是小工具樣本:

(function($){ 
    $.widget("mywidget", { 
    options: { 

    }, 
    _create: function(){ 
     var self = this; 
     $.ajax({ 
     url: "/api/1.0/getdata", 
     type: "GET", 
     contentType: "application/json", 

     success: function(arg) { 
     //will be inserting the details from the json call into the <div> 
     var data = arg; 
     }, 
     error: function(resp){ 
     } 
    }); 
    } 
    }); 
})(jQuery); 

這裏是我想使呼叫轉移到小部件:

$(document).ready(function(){ 
    console.log("show my widget"); 
    $("#div").mywidget(); 
}); 

這裏是我試圖加載我插件的HTML :

<div id="div"> 
    <p>Welcome to the newly created JQuery widget</p> 
</div> 

但是當我做這個沒什麼被調用,也不是所謂的URL,從中我試圖訪問數據顯示在我的消息中,也沒有<div>。任何想法如何在頁面加載時訪問小部件?

+2

是'console.log(「show my widget」);'輸出任何東西到控制檯? –

+0

沒有..它不顯示日誌,但在控制檯中,當我運行窗口小部件時,它會被加載... – user1234

+0

您的'document.ready'調用缺少關閉圓括號和分號。 – litel

回答

1

語法錯誤,使用最新的穩定jQuery UI的我必須包括在我的窗口小部件名稱的命名空間。這裏有一個jsfiddle與您的代碼工作。請注意,它會正確地輸出一個錯誤,試圖點擊/api/1.0/getdata

如果此解決方案在您的設置中不起作用,請確保在嘗試使用它之前運行小部件初始化代碼。

0

看來,您的文檔準備就是缺少括號.. 嘗試 - 除了

$(document).ready(function(){ 
    console.log("show my widget"); 
    $("#div").mywidget(); 
}); 
+0

對不起,這只是編寫代碼時的錯字,但我有正確的語法,它仍然沒有按要求工作... – user1234

相關問題