alien Posted January 31, 2008 Report Share Posted January 31, 2008 Sastapos ar problēmu, ka document.getElementById(cstr) nesanāk nekādīgi padot mainīgo tas būtu kaut vai šis pats cstr, jebkurā gadījumā tiek ņemts elementa id ar nosaukumu kas padots, kas loģiski beidzas error consolē ar kļūdu: document.getElementById(cstr) has no properties es tā domāju, ka nevarētu būt tā ka getElementById var padot tikai konstanti ne? Link to comment Share on other sites More sharing options...
Guest Zigis Posted January 31, 2008 Report Share Posted January 31, 2008 Cik zinu, tad JavaScript vispār nav tāda lieta kā konstantes. Kas attiecas uz Tavu kļūdu, tad visticamāk nav elementa, kuram id būtu vienāds ar cstr vērtību. Link to comment Share on other sites More sharing options...
Sasa Posted February 1, 2008 Report Share Posted February 1, 2008 pamēģini document.getElementById('cstr').value = ... kaut kā tā, ja pareizi sapratu! Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 (edited) Domāju, ka cilvēks mēģina getElementByID izsaukt jau pirms dokumenta ielādes. Pamēģini ielikt kodu iekš window.onload = funciton() {} vai ari nonest vienkārši lapas pašā apakšā. Edited February 1, 2008 by andrisp Link to comment Share on other sites More sharing options...
Grey_Wolf Posted February 1, 2008 Report Share Posted February 1, 2008 1. pirms tas rindinjas ieliec alert(cstr) un paskaties kas vispar tiek padots... 2. gadijuma neizmanto AJAX? Ja ja tad var but ka dotais elements vel nav ieladejies.... // Ajax izpildas atseviskja plusma .... // Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 // Ajax izpildas atseviskja plusma .... // Grey_Wolf, kā tu to domā ? Link to comment Share on other sites More sharing options...
alien Posted February 1, 2008 Author Report Share Posted February 1, 2008 nē, neviens mani nesaprata... :( pamēģiniet paši: var cstr = 'c_34534'; // nav būtiski document.write(cstr); // vai alert vienalga bet izvada c_34534 kā tam būtu arī jābūt var blablabla = document.getElementById(cstr).innertHTML; // rada kļūdu jo id cstr nav, bet man nemaz to nevajag, man vajag lai ņem id c_34534 Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 rada kļūdu jo id cstr nav, bet man nemaz to nevajag, man vajag lai ņem id c_34534 Atvaino, bet ko tur murgo? Tad tev vajag elementu atrast pēc id vai nevajag ? Link to comment Share on other sites More sharing options...
alien Posted February 1, 2008 Author Report Share Posted February 1, 2008 nav id kuram nosaukums cstr, viņs neņem mainīgā cstr saturu, bet vienkārši nosaukumu 'cstr' Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 Ņem gan. Paskaties pats: http://paste.php.lv/6818 Link to comment Share on other sites More sharing options...
alien Posted February 1, 2008 Author Report Share Posted February 1, 2008 paldies par parādīšanu... patiešām ņem pretī, vai var būt pie vienas tas, ka šis javascripts tiek echots iekš php ar '' vai "" ? Link to comment Share on other sites More sharing options...
andrisp Posted February 1, 2008 Report Share Posted February 1, 2008 Diezvai. Drīzāk gan pie vainas varētu būt tas, ka tas javascript izpildās pirms tā HTML elementa. Tev tas JS ir ielikts iekš window.onload vai arī pašā lapas apakšā ? Link to comment Share on other sites More sharing options...
alien Posted February 1, 2008 Author Report Share Posted February 1, 2008 liels paldies, tā bija funkcija kas tika izsaukta tieši pirms šiem id, laikam javascripts ir tik gudrs, ka ja nav tāda id izmēģina arī mainīga nosaukumu, kas mani samulsināja! Link to comment Share on other sites More sharing options...
xPtv45z Posted February 1, 2008 Report Share Posted February 1, 2008 Es gan teiktu otrādi. Jo atšķirībā no citām valodām, kuru kļūdu paziņojumos parāda mainīgā vērtību, kas mēģināta, JS kļūdu paziņojumos tā arī paliek mainīgā nosaukums. Link to comment Share on other sites More sharing options...
bubu Posted February 1, 2008 Report Share Posted February 1, 2008 Kļūdas paziņojuns "document.getElementById(cstr) has no properties" nozīmē to, ka objekts, kuru atgriež document.getElementById(cstr) funkcija ir null. Un null vērtībai nav neviena propertija. Pamēģini pats: var x = null; y = x.innertHTML; Ja netici atgrieztajām vērtībām, tad vienmēr pārbaudi tās: var elem = document.getElementById(cstr); if (elem) { alert(elem.innerHTML); } else { alert("Kļūda - " + cstr + " elements nav atrasts! (elem == null)"); } Link to comment Share on other sites More sharing options...
Recommended Posts