2012-08-11 7 views
14

मैं निम्नलिखित जावास्क्रिप्ट कोड है देता है:जावास्क्रिप्ट प्लग त्रुटि

function delete_draft(id, name) { 
    var text = 'Are you sure you want to delete "' + name + '"?'; 
    alert(id + name) 
    var noty = noty({ 
     text: text, 
     buttons: [ 
     {addClass: 'btn btn-primary', text: 'Yes', onClick: function($noty) { 

      // this = button element 
      // $noty = $noty element 

      $noty.close(); 
      $.post('/ajax/drafts/delete', {id:id}, function(data) { 
       document.location.reload(true); 
      }); 
     } 
     }, 
     {addClass: 'btn btn-danger', text: 'Cancel', onClick: function($noty) { 
      $noty.close(); 
     } 
     } 
    ]}); 
} 

जब मैं वाणिज्य दूत delete_draft(6, "this is it") से चला मैं यह त्रुटि

TypeError: undefined is not a function 
arguments: Array[1] 
get message: function() { [native code] } 
get stack: function() { [native code] } 
set message: function() { [native code] } 
set stack: function() { [native code] } 
type: "called_non_callable" 
__proto__: Error 

मैं इसे कैसे ठीक कर सकते हैं? नोटी के लिए वेबसाइट http://needim.github.com/noty/ यदि आपको लगता है कि इसे काम करना चाहिए, तो टिप्पणी करें।

+0

'नोटी 'क्या है? कोड में 'var noty = noty' नोटी के रूप में कार्य अनिर्धारित है। हो सकता है कि आपको 'var noty = function ('? – Vsevolod

+0

@Vsevolod की आवश्यकता हो, इसलिए मैंने बोटम –

+0

@" माइक जी "पर नोटी साइट पर एक लिंक डाला है, मैं आपका लिंक नहीं खोल सकता :-(आप नोट कैसे प्लग करते हैं। आप में एचटीएमएल? – Vsevolod

उत्तर

25

मैं अभी इस समस्या में आया हूं। ऐसा लगता है क्योंकि परिवर्तनीय नाम noty निर्यात किए गए फ़ंक्शन नाम noty जैसा ही है।

var n = noty({text: 'testing 123'}); 

बस परिवर्तनीय नाम बदलना मेरे लिए इसे ठीक करता है।

+1

इस के लिए बहुत बहुत धन्यवाद! –

+0

धन्यवाद, मुझे कुछ मिनट बचाए :) –

+0

नोट के मुख्य पृष्ठ में उन्होंने नमूना var noty = noty ({... बहुत धन्यवाद !!!! –

4

परिवर्तनीय का नाम बदलने के अलावा सुनिश्चित करें कि आप लेआउट जेएस फ़ाइल शामिल हैं। डिफ़ॉल्ट शीर्ष है, इसलिए यदि यह विकल्पों में निर्दिष्ट नहीं है तो आपको noty/layouts/top.js शामिल करना होगा। यदि आप किसी अन्य लेआउट निर्दिष्ट करते हैं तो उपयुक्त लेआउट जेएस फाइलें शामिल हैं।

संबंधित मुद्दे