Jeg kæmper lidt med noget remote scripting, men er ingen javascript-ørn og har svært ved at løse denne...
Jeg har en funktion, som i et andet script virker fint og returnerer indholdet til et listbox/select.
Nu vil jeg have en anden funktion næsten magen til, der returnerer indholdet til et input-felt.
Jeg ved bare ikke, hvordan jeg gør...
Her er funktionen, der udfylder en select/listbox:
function RemoteScriptListBox(lbname,SQL) dim comma,x,conn,rx,col1,col2 dim ret
set conn=server.CreateObject("ADODB.Connection") myconn = "DRIVER={SQL Server};SERVER=xxx;UID=xxx;pwd=xxx; DATABASE=xxx;" conn.open myconn
comma="" x=0
ret = ret & "var lb=" & lbname & ";"
'--create remote array ret = ret & "var _o0=new Array(" Set rx = conn.Execute(SQL) do while not rx.eof
col1=rx(0)
MyVar = rx(1) if len(MyVar) = 1 then MyVar = "000" & MyVar Elseif len(MyVar) = 2 then MyVar = "00" & MyVar Elseif len(MyVar) = 3 then MyVar = "0" & MyVar End if
col2=trim(cstr(MyVar & " - " & rx(2)))
ret = ret & comma & jq(col2) & "," & jq(col1) comma=","
x=x+1 rx.movenext loop rx.close conn.close ret = ret & ");"
'instruct javascript to populate the listbox ret = ret & "lb.length=0;" ret = ret & "var x=0;" ret = ret & "while (x != _o0.length) {" ret = ret & "lb.options[lb.length] = new Option(_o0[x],_o0[x+1]);" ret = ret & "x=x+2;}"
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det er js-delen, som driller. Ovenstående script udfylder en select, men nu vil jeg bruge samme/en kopi af scriptet til at udfylde en <input type=text name=zz>.
Jeg kan se, at ovenstående returnerer en streng, der starter med "var lb=[lbname];var _o0=new Array(...." (altså indholdet til en select). Spørgsmålet så lige, hvordan jeg får lavet det om, så scriptet blot udfylder en input ?
OK, når jeg kalder ovenstående, får jeg indholdet til en <select> udfyldt med data fra db'en. Det virker fint.
I stedet for dette, vil jeg have scriptet til at udfylde en input (<input type="text" name="city> med mine data. ASP-delen kan jeg fint, men jeg aner ikke, hvordan jeg ændrer js-delen.
"OK, når jeg kalder ovenstående, får jeg indholdet til en <select> udfyldt med data fra db'en. Det virker fint." >> Hvad? Hvor? Hvordan? Det kan jeg ikke få øje på. Nu må du prøve at tage dig sammen og give en ordentlig forklaring
Jeg vil gerne prøve - jeg troede koden var selvforklarende for en haj som dig :-)
Jeg kalder funktionen "RemoteScriptListBox(lbname,SQL)" med en onchange på en <select>. Værdien i selecten(this.value) puttes ind i SQL'en, som giver mig rx(n).
Ovenstående loop giver mig så et array, der er indholdet i <select name=[lbname]>. Og i stedet for et array, ville jeg gerne have funktionen til at returnere/udfylde værdien i et input-felt. Og det virkede så, da jeg ændrede ovenstående til blot:
function RemoteScriptListBox(lbname,SQL) dim ret
ret = "document.getElementById('city').value='test';"
Men jeg mente/synes/troede bare ikke, at det var relevant for spørgsmålet. Men hvad ved en bager om biler...
Læg et svar - du skal have tak for opmærksomheden. Husk også at lægge et svar på mit spørgsmål fra i lørdags, hvor du også bidrog.
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.