2015-06-28 20 views
8

Używam JQuery QueryBuilder na mojej stronie HTML. Śledziłem numer installation guide. Moja głowa HTML zawiera następująceJQuery QueryBuilder nie działa

<script src="bower_components/jquery/dist/jquery.min.js"></script> 
    <script src="bower_components/bootstrap/dist/js/bootstrap.js"></script> 
    <script src="bower_components/moment/moment.js"></script> 
    <script src="bower_components/jquery-extendext/jQuery.extendext.js"></script> 
    <link href="bower_components/bootstrap/dist/css/bootstrap.css" rel="stylesheet" type="text/css" /> 
    <link href="bower_components/jQuery-QueryBuilder/dist/css/query-builder.default.css" rel="stylesheet" type="text/css" /> 
    <script src="bower_components/jQuery-QueryBuilder/dist/js/query-builder.standalone.js"></script> 

Moje ciało ma

<div id="builder"></div> 

Ale gdy używam

<script> 
    $('#builder').queryBuilder({ 
    filters: [ ... ] 
    }); 
</script> 

konsolę Chrome mówi

query-builder.standalone.js:437 Uncaught TypeError: Cannot set property 'queryBuilder' of undefined 

Wszystkie moje componenets altana są poprawnie zainstalowane.

Co robię źle?

+0

trzeba elementu HTML '' '' '' : '' '

'' ' – angabriel

+0

Zawarłem to. Wciąż dostaję ten sam błąd. –

Odpowiedz

4

Przenieś skrypt poniżej div budowniczy elementem

<div id="builder"></div> 

<script> 
    $('#builder').queryBuilder({ 
    filters: [{id:1}] // You need to implement this 
    }); 
</script> 

lub użyć jQuery document.ready

$(document).ready(function(){ 
    $('#builder').queryBuilder({ 
     filters: [{id:1}] // You need to implement this 
    }); 
    }) 
+0

Ale kiedy używam tego samego w $ (document) .ready (function() {...}, nadal mam ten sam błąd.Muszę dodać detektor onclick do przycisku –

+0

Błąd, który wydawał się być kiedy $ ('# builder') został wywołany, div nie został jeszcze wyrenderowany – Skarlinski

+0

jeśli zrobisz console.log ($ ('# builder'). length), co otrzymasz? – Skarlinski