Punjenje DropDownList-a, debugiranje, NS_ERROR_FAILURE

Totalni sam početnik u JavaScriptu i imam nekoliko pitanja:

  1. Kada radim na lokalnoj mašini, ovaj kod diže grešku NS_ERROR_FAILURE …

    var oXMLHTTP1 = new XMLHttpRequest();
    var sURL = “http://www.stanovi.biz/zx_xp_grad_select_iz_naziva.aspx?gradnaziv=” + grad_naziv;
    oXMLHTTP1.open( “POST”, sURL, false );
    try
    {
    oXMLHTTP1.send();
    }
    catch (fff)
    {
    alert(fff);
    }

Taj isti kod kada je na serveru radi normalno. Guglo sam, vidio da se ta greška javlja ljudima ali nigdje konkretnog rješenja.

  1. Koji je ispravan način punjenja DropDownLista
    Probao sam sa

    document.getElementById(“txtKVART_NAZIV”).innerHTML = “CentarTrešnjevka”;

i sa

var optn = document.createElement("OPTION");
optn.text = "čentro";
optn.value = 1;
document.getElementById("txtKVART_NAZIV").options.add(optn);

Obje opcije rade i napune dropdownlistu ali kada želim potvrditi formu javlja se error.

  1. Kako mogu debugirati kod?
    Firebug ili postoji nešto bolje?

Za početak bih ti htio preporučiti jQuery, olakšati ćeš si život.

Svako dodavanje je dobro, bit svega je da puniš “select” element “option” elementima. Da li ces napuniti element sa fiksnim html kodom, ili ces napraviti append/prepend sasvim je svejedno tj. ne utječe na tvoj problem. Svejedno, bilo bi ti praktičnije spremiti opcije u neki array pa kasnije samo izvrtiti taj array i generirati dropdown…

Mogu samo nagađati da je tvoj problem što pokušavaš dohvatiti elemente koje si stvorio nakon što se html renderirao?

I da, definitivno Firebug :slight_smile:

Dao si mi materijala za razmišljanje. :slight_smile:
Javim se.

Uglavnom, ja bih na tvom mjestu prvo provjerio da li su svi elementi stvoreni prije nego ih pokušavaš dohvatiti.

Jesu, ali ih kreiram nakon prikaza forme.
Šaljem ti neobavezni PM, ne moraš se zezati ako nemaš volje.

Ok, na izlasku pa se javim sutra ili cim uhvatim vremena :wink:

Hvala

Junior mi je poslao vrlo jednostavan i pregledan demo iz kojeg sam skužio da punim innerHTML kontrole umjesto div taga. :krele:

Evo ako nekome zatreba:

init.js

index.html

jQuery:
http://jquery.com/