19. maj 2003 - 20:29Der er
18 kommentarer og 1 løsning
Overføre værdi fra sql forspørgelse til en javascript
Jeg har et problem. som jeg håber at i kan hjælpe med. jeg har lavet count forspørgelsen for at få antal af oprettet poster i db. den værdi skal jeg på en eller anden måde ha med over i javascript.
set rs = server.CreateObject("adodb.recordset") sql ="SELECT * From Categories ORDER BY Categories.id ; " Set rs= con.Execute(sql)
<% set db = server.CreateObject("adodb.recordset") SQL ="SELECT COUNT(dbid) AS MENU FROM TCategories" Set db= con.Execute(SQL) %> <script> var NumberOfMenus = <%= db("menu")%>; </script> <% mere asp %>
Hvis du downloader filen så vil du se hvad jeg mener. og en af parameter er antal af oprettet menupunkter ** var nNumberOfMenus=2 ** og det er her jeg er løbet ind i problemmer. for at gør menu kan blive dynamisk så er det nødvendigt at lave count forspørgsel
Hej jytte. Den del er lidt svær at forklare. <div id="divTopMenu0" class="clTopMenu"> skifter man divtopmenu**0** ud med f.eks idnr i din db og laver en løkke, så oprettes der lige så mange menupunkter som der poster i db.
så hvis der 4 poster i db så opretter den også 4 div. vel og mærket hvis man sætter nNumberOfMenus=3 da 0 også tæller med. hvilket er = 4 i alt.
Og nu er vi kommet til sagens kerne. for hvis jeg oprettet en ny post i databasen. så vil nNumberOfMenus=3 ikke blive forøget med 1 da den er statisk
derfor lavede jeg count forspøgelse for at få antal oprette poster i db. og den værdi vil jeg overføre til javascriptet
den eksempel som mm12010 har lavet er faktisk det samme som jeg selv har prøvet. og jeg kan ikke få den til at virke. om det er fordi jeg mangler () " " mm. det håber at i kan være med til at løse
Sørg for at du ikke har lukket recordsettet inden du prøver at trække ud til dit js. <% set rs = server.CreateObject("adodb.recordset") sql ="SELECT * From Categories ORDER BY Categories.id ; " Set rs= con.Execute(sql) nrecords = rs("antal") %> <script>
Hej jacob. det jeg skal bruge er antal af oprette poster i en tabel som hedder TCategories. hvilket er = antal Menupunkter som der skal oprettes (lad os sige at der oprette 3 poster i tabel TCategories. den værdi skal jeg have med ind i javascriptet. da scriptet skal vide hvor mange menupunkter der skal oprettes.)
org.
<script> var NumberOfMenus=3 </script>
den eksempel jeg selv har lavet magen til denne her. men det virker ikke
<% set db = server.CreateObject("adodb.recordset") SQL ="SELECT COUNT(dbid) AS MENU FROM TCategories" Set db= con.Execute(SQL) %> <script> var NumberOfMenus = <%= db("menu")%>; </script>
<% mere asp %>
jytte har tilgengæld fået værdien antal oprette poster ind i alert boks. men da jeg ikke selv er ferm til javascript. så har jeg brug for jeres hjælp
<script language="javascript"> var NumberOfMenus = <%= db("menu")%>; alert('NumberOfMenus='+NumberOfMenus); </script>
Nu har prøvet at forklare det så godt som jeg kan. og samtidigt med, har jeg hvis også fået opdateret forløbet indtil nu.
Når alertboxen viser antallet at menuer er det fordi numberOfMenus indeholder dette tal. Dvs. du har fået overført antallet af menuer fra asp til javascript. Det kan du iøvrigt også se ved at højreklikke og vælge vis kilde.
Når du siger at det ikke virker mener du jo nok at dine dropdown-menuer ikke virker. Det er et andet problem som kan have noget at gøre med at dine dynamiske tilføjede div ikke ser helt rigtig ud.
Jeg foreslår at du først prøver at lave en statisk udgave af dine dropdowns med de nye indgange.
Når den virker kan du prøve at lave en dynamisk udgave af den samme. Ved at bruge vis kilde kan du nu sammenligne med den statiske (der virker). Den genererede skal nemlig se nøjagtig ud som den statiske.
Hej og tak for hjælpen. jeg har løst problemmet. en særlig tak til jytte. problemmet stod af flere ting. 1 hvis man skal bruge javascript sammen asp så skal javascript lig fysisk samme sted. ikke som extern fil. for det andet så kan sagten brug vb variabler mm i en javascript. Jeg have ved vane lagt min javascript ud som en extern js fil. Jeg troede ikke at det have nogen betydning. Men gør man det så spiller det ikke. så i har alle haft ret. så Tak for hjælpen
Du kan nu godt have din javascript i en extern fil -- så skal du bare omdøbe den så den får extension .asp for ellers vil din <%= NumberOfMenus %> ikke blive fortolket som asp-kode men som javascript og så giver det jo ikke så meget mening.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.