Witam,
Mam prostą aplikację z użyciem HTML, JS i JQuery, w przeglądarce Google Chrome wszystko chodzi ładnie:
Natomiast w innych przeglądarkach nic nie działa i wszystko się sypie... Po odpaleniu np. w Firefox wyskakuje błąd: TypeError: a is null
.
Tylko, że ja nawet żadnej zmiennej "a" w tym programie nie mam... Mam sobie np. funkcję render(), którą wywołuje na początku i już od razu mi cos w niej krzyczy... a w Google Chrome wszystko śmiga elegancko, poza tym w JSBin i JSFiddle też nie działa.
Funkcja render wygląda na przykład tak:
function render(){
var result = ""
var tableHeader = "<table><tr><th>LP</th><th>NAZWA</th><th>ILOŚĆ</th><th>CENA</th><th>SUMA</th></tr>";
result += tableHeader;
var suma_razem_za_wszystko = 0.00;
$.each(dane, function(i, e){
result += "<tr>"
result += "<td>" + e.lp + "</td>"
result += "<td>" + e.nazwa + "</td>"
result += "<td>" + e.ilosc + "</td>"
result += "<td>" + e.cena + "</td>"
result += "<td>" + Math.round((e.ilosc*e.cena)* 100) / 100 + "</td>"
result += "<td><button class='del'>Usun</button></td>"
result += "<td><button class='edit'>Edytuj</button></td>"
result += "<td><button class='gora'>Przesuń w góre</button></td>";
result += "<td><button class='dol'>Przesuń w dół</button></td>";
result += "</tr>"
suma_razem_za_wszystko += Math.round((e.ilosc*e.cena)* 100) / 100;
})
var tableFooter = "<tr><td>RAZEM:</td><td>" + suma_razem_za_wszystko.toFixed(2) + "</td></tr></table>";
result += tableFooter;
$("#myTable").html(result);
};
render();
W pliku html normalnie dodaje w head:
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript" src="main.js"></script>
Z tego co czytałem teraz sporo to coś zrozumiałem, że chodzi o to, że nie zostało coś załadowane jeszcze? Nie rozumiem o co chodzi i jak to rozwiązać, ktoś pomoże?