/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Søgning i en formular?
Fra : Ukendt


Dato : 10-12-09 12:45

Hej.
I en ASP MsSQL database har jeg brug for en løsning, så jeg i en formular
kan søger efter et serienummer som indsættes i formularen. En select boks
kan ikke bruges da databasen indeholder over 8.000 serienumre.

Det har jeg har brug for er en select boks som viser serienumre baseret på
de 3 første felter i formularen uden at submitte formularen.

Mvh
Henning



 
 
Stig Johansen (10-12-2009)
Kommentar
Fra : Stig Johansen


Dato : 10-12-09 17:29

"Henning Smed" <henning at smeds dk> wrote:

> I en ASP MsSQL database har jeg brug for en løsning, så jeg i en formular
> kan søger efter et serienummer som indsættes i formularen. En select boks
> kan ikke bruges da databasen indeholder over 8.000 serienumre.
>
> Det har jeg har brug for er en select boks som viser serienumre baseret på
> de 3 første felter i formularen uden at submitte formularen.

Der har du brug for noget Ajax.
Jeg Xfut'er til .clienside, hvor der er bedre mulighed for at få svar.

--
Med venlig hilsen
Stig Johansen

Ukendt (13-12-2009)
Kommentar
Fra : Ukendt


Dato : 13-12-09 15:46

"Henning Smed" <henning at smeds dk> wrote:
"Stig Johansen" <wopr.dk@gmaill.com> svarede i en meddelelse
news:4b212304$0$278$14726298@news.sunsite.dk...
> Der har du brug for noget Ajax.
> Jeg Xfut'er til .clienside, hvor der er bedre mulighed for at få svar.

Tak for din henvisning Stig,

Jeg indtil nu kun anvendt færdige JavaScripts, men nu er der ingen vej
udenom, jeg må lære at anvende AJAX/Java.
http://www.w3schools.com/Ajax/ajax_database.asp fandt jeg en beskrivelse,
som jeg troede kunne løse mit problem men jeg er kørt fast.

Jeg har uploaded en demo af mit nuværende resultat og kildekoden, hvor
Select boksen i række 16 er betinget af indholdet af 9 og 4:
http://www.smeds.dk/SpareTst/Card/CardCreateAJAX.asp

http://www.smeds.dk/SpareTst/Card/ajax.txt

Jeg ønsker at begrænse valgmulighederne i alle Select bokse så:
Række 9 betinget af række 4 (er OK)
Række 10 af 4 og 9
Række 15 af 4, 9 og 10
Række 16 af 4, 9, 10 og 15

Hvordan kan jeg få alle betingelser opflydt, og hvordan skriver jeg det
endelige resultat af formularen til databasen, når select boksenes indhold
findes på flere asp sider?

Mvh.
Henning



Stig Johansen (14-12-2009)
Kommentar
Fra : Stig Johansen


Dato : 14-12-09 04:49

"Henning Smed" <henning at smeds dot dk> wrote in message
news:4b24fe41$0$278$14726298@news.sunsite.dk...
>
> Jeg indtil nu kun anvendt færdige JavaScripts, men nu er der ingen vej
> udenom, jeg må lære at anvende AJAX/Java.
> På http://www.w3schools.com/Ajax/ajax_database.asp fandt jeg en
beskrivelse,
> som jeg troede kunne løse mit problem men jeg er kørt fast.

Uff - det er vist et gammelt, simpelt forsøg.
Der mangler test på status m.m, så den vil jeg nok ikke anbefale at bruge.

Jeg har heller ikke rigtig fundet nogle gode scripts, så jeg laver dem selv.

Til Ajax brug, har jeg lavet denne gennerelle funktion:
http://w-o-p-r.dk/javascript/callXMLHTTPRequest.js
som jeg inkluderer.

Hvis jeg har brug for at sende data som ISO-8859-1, har jeg lavet denne
funktion:
http://w-o-p-r.dk/javascript/UTF8toAnsi.js

Hvis du er interesseret i at bruge dem, så er du velkommen.

> Jeg har uploaded en demo af mit nuværende resultat og kildekoden, hvor
> Select boksen i række 16 er betinget af indholdet af 9 og 4:
> http://www.smeds.dk/SpareTst/Card/CardCreateAJAX.asp
>
> http://www.smeds.dk/SpareTst/Card/ajax.txt
>
> Jeg ønsker at begrænse valgmulighederne i alle Select bokse så:
> Række 9 betinget af række 4 (er OK)
> Række 10 af 4 og 9
> Række 15 af 4, 9 og 10
> Række 16 af 4, 9, 10 og 15
>
> Hvordan kan jeg få alle betingelser opflydt, og hvordan skriver jeg det
> endelige resultat af formularen til databasen, når select boksenes indhold
> findes på flere asp sider?

Hvis vi tager udgangspunkt i mine funktioner, så skal du lave kald for både
række 9,10 og 15.

Hvis jeg forstår dig ret, så kender du cable station (række 4) når du kalder
siden.

Ud fra den danner du Equipment(række 9) - så langt så godt.
Men i dette kald skal du ikke have data i række 10,15 og 16, da disse ikke
er valgt.

Her kan du vælge at lave en tom række, eller en dummy select box, så det
'ligner noget'.

Dvs. ved kald i ASP'en, returnerer du række 9 som nu med en eventhandler på
onchange, lad os kalde den selectcard,
og den funktion kunne så se sådan ud:
.....
function selectcard(station) {

callXMLHTTPRequest('get',url,['station',station],[],showcard,station,false,f
alse,[]);
}
.....

og lægges ind i ASP med
onchange="showSerial(this.value)

Forinden skal du have defineret nogle globale variable:
.....
var selectedstation;
var selectedcard;
var selectedlocation;
.....

I dette kald er defineret en callbackfunktion, showcard, der bliver kaldt
når Ajax er færdigt.
Den kunne se sådan ud:
.....
function showcard(responsedata,returndata,isOK,X) {
if ( isOK ) {
// opdater række 10 med select box fra ASP, incl
onchange="selectlocation(this.value)"
selectedcard = returndata ;
}
}
.....
Når det er lavet, så vil du få en række 10 med de valg, der ligger inden for
række 9.

Eventhandleren til række 10, kan se sådan ud:
.....
function selectlocation(card) {

callXMLHTTPRequest('get',url,['station',selectedstation,'card',card],[],show
location,card,false,false,[]);
}
.....
Callbackfunktionen, som skal danne række 15:
.....
function showlocation(responsedata,returndata,isOK,X) {
if ( isOK ) {
// opdater række 15 med select box fra ASP, incl
onchange="selectserial(this.value)"
selectedstation = returndata ;
}
}
.....

Række 15 er så udvælgelse af serienumre til række 16, kunne se sådan ud:

.....
function selectserial(location) {

callXMLHTTPRequest('get',url,['station',selectedstation,'card',selectedcard,
'location',selectedlocation],[],showserial,card,false,false,[]);
}
.....
Callbackfunktionen, som skal danne række 15:
.....
function showserial(responsedata,returndata,isOK,X) {
if ( isOK ) {
// opdater række 16 med select box fra ASP
}
}
.....

Hvis du klipper disse kodestumper ud, har du stort set det færdige script.
Bemærk, ar den url, der skal kaldes er angivet som en variabel, som du kan
definere globalt,
var url='getdata.asp'.

Der skal ikke tilføjes ? eller & eller andet, det sørger rutinen for.
De data der skal tilføjes (og URI encodes) overføres blot i arrayet som name
value pairs.

Nu har jeg kaldt den getdata.asp, for det er 3 forskellige slags data, der
skal returneres.

Den første funktion vil generere et kald:
getdata.asp?station=<valg>
næste:
getdata.asp?station=<valg>&card=<valg>
og tredje:
getdata.asp?station=<valg>&card=<valg>&location=<valg>

Du kan selv afgøre om du vil have een ASP fil med 3 funktioner eller 3 ASP
filer med 1 funktion.
Hver funktion er ca. den samme som du har i din nuværende ASP.

Du kan også tilføje en funktionsparameter i kaldet, så du er fri for at lave
for mange if'er i ASP en.
Hvis du f.eks. tilføjer 'funktion','1' i første kald, 'funktion','2' i andet
osv, så kan du lave ASP'et a la:
if Request.Querystring("funktion")="1" then
SQL = "SELECT DISTINCT Card FROM tblSpares WHERE TerminalStation = ?
ORDER BY Card ASC"
set rs=query(oConn,SQL,Array(Request.Querystring("station")),1)
osv. - som i din getserial.asp
end if
if Request.Querystring("funktion")="2" then
SQL="SELECT DISTINCT Location FROM tblSpares WHERE TerminalStation = ?
AND Card = ? ORDER BY Location ASC"
set
rs=query(oConn,SQL,Array(Request.Querystring("station"),Request.Querystring(
"card")),2)
osv. - som i din getserial.asp
end if

Her har jeg brugt parameterized queries, så man er sikret mod SQL injection.
Include fil til query funktionen:
http://w-o-p-r.dk/tips/asp/SQL.inc.asp.txt

Det er muligt jeg blander lidt rundt i navnene, men jeg kender ikke dit
system, så jeg har bare brugt station,card,location.

Med hensyn til dit spørgemål om hvordan du skriver data, så bliver dataene
sendt med din form.
Du har ikke nogen action og method på, så den bliver 'sendt til sig selv'.

Jeg bruger selv en konstruktion a la:
if Request.Servervariables("REQUEST_METHOD") = "GET" then
.... her viser vi form med data
else ' POST
.... her modtager, og opdaterer vi data
end if

Hvis du vil bruge den metode, skal du rette din <form> til <form
method="post" action="">
Men husk at de modtagne data så ligger i Request.Form, og ikke i
Request.Querystring.

Det med den optræder på flere sider, forestiller jeg mig kan løses med at
lægge disse dele i en include fil, og inkludere den hvor den skal bruges.

Umiddelbart fremgpr det ikke om du bruger include filer eller ej, men jeg
bruger f.eks. denne her til databaser:
.....
<%
Dim oConn
Dim oConnString
Set oConn = Server.CreateObject("ADODB.Connection")
oConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
Server.MapPath("/") + "/../database/notesdb.mdb;Persist Security Info=False"
oConn.Open oConnString
%>
.....
De steder hvor jeg skal bruge databasen bruger jeg:
<!--#include file="notesdb.inc.asp"-->

Nu må vi se om du kan komme videre, men du har i hvert fald fået noget at
tænke over.

--
Med venlig hilsen/Best regards
Stig Johansen




Ukendt (14-12-2009)
Kommentar
Fra : Ukendt


Dato : 14-12-09 15:30


"Stig Johansen" <wopr.dk@gmail.com> wrote in message
news:4b25b59a$0$282$14726298@news.sunsite.dk...
> "Henning Smed" <henning at smeds dot dk> wrote in message
> news:4b24fe41$0$278$14726298@news.sunsite.dk...

Mange tak for dit svar Stig.
Jeg har forsøgt at bruge dine scripts, men kan ikke få siden til at fungere,
herunder mine svar og spørgsmål.
>
> Hvis jeg forstår dig ret, så kender du cable station (række 4) når du
> kalder
> siden
..
Ja jeg henter CableStation fra databasen udfra brugerens login.

> Ud fra den danner du Equipment(række 9) - så langt så godt.
> Men i dette kald skal du ikke have data i række 10,15 og 16, da disse ikke
> er valgt.
>
> Her kan du vælge at lave en tom række, eller en dummy select box, så det
> 'ligner noget'.
>
> Dvs. ved kald i ASP'en, returnerer du række 9 som nu med en eventhandler
> på
> onchange, lad os kalde den selectcard,
> og den funktion kunne så se sådan ud:
> ....
> function selectcard(station) {
>
> callXMLHTTPRequest('get',url,['station',station],[],showcard,station,false,f
> alse,[]);
> }

Hvor skal dette script placeres?

> og lægges ind i ASP med
> onchange="showSerial(this.value)

> Forinden skal du have defineret nogle globale variable:
> ....
> var selectedstation;
> var selectedcard;
> var selectedlocation;
> ....
>
> I dette kald er defineret en callbackfunktion, showcard, der bliver kaldt
> når Ajax er færdigt.
> Den kunne se sådan ud:
> ....
> function showcard(responsedata,returndata,isOK,X) {
> if ( isOK ) {
> // opdater række 10 med select box fra ASP, incl
> onchange="selectlocation(this.value)"
> selectedcard = returndata ;
> }
> }
> ....
> Når det er lavet, så vil du få en række 10 med de valg, der ligger inden
> for
> række 9.
>
> Eventhandleren til række 10, kan se sådan ud:
> ....
> function selectlocation(card) {
>
> callXMLHTTPRequest('get',url,['station',selectedstation,'card',card],[],show
> location,card,false,false,[]);
> }
> ....
> Callbackfunktionen, som skal danne række 15:
> ....
> function showlocation(responsedata,returndata,isOK,X) {
> if ( isOK ) {
> // opdater række 15 med select box fra ASP, incl
> onchange="selectserial(this.value)"
> selectedstation = returndata ;
> }
> }
> ....
>
> Række 15 er så udvælgelse af serienumre til række 16, kunne se sådan ud:
>
> ....
> function selectserial(location) {
>
> callXMLHTTPRequest('get',url,['station',selectedstation,'card',selectedcard,
> 'location',selectedlocation],[],showserial,card,false,false,[]);
> }
> ....
> Callbackfunktionen, som skal danne række 15:
> ....
> function showserial(responsedata,returndata,isOK,X) {
> if ( isOK ) {
> // opdater række 16 med select box fra ASP
> }
> }
> ....
>
> Hvis du klipper disse kodestumper ud, har du stort set det færdige script.
> Bemærk, ar den url, der skal kaldes er angivet som en variabel, som du kan
> definere globalt,
> var url='getdata.asp'.
>
> Der skal ikke tilføjes ? eller & eller andet, det sørger rutinen for.
> De data der skal tilføjes (og URI encodes) overføres blot i arrayet som
> name
> value pairs.

Jeg har uden held forsøgt at få dine scripts til at fungere på den helt
simple side:
http://www.smeds.dk/SpareTst/Card/test.asp
Kildekoden til test.asp og getdata.asp:
http://www.smeds.dk/SpareTst/Card/test.txt

Vil du kontrollere at jeg har placeret scriptene korrekt og at variabel
navne er OK?

Hvordan ser jeg om scriptene køres og hvordan kan jeg fejlfinde?

> Nu har jeg kaldt den getdata.asp, for det er 3 forskellige slags data, der
> skal returneres.

Jeg har testet getdata.asp ved at kalde siden med:
http://www.smeds.dk/SpareTst/Card/getdata.asp?station=WTU
og
http://www.smeds.dk/SpareTst/Card/getdata.asp?station=PFE

Når test siden fungerer kan jeg gå videre.

På forhånd tak
Henning



Stig Johansen (14-12-2009)
Kommentar
Fra : Stig Johansen


Dato : 14-12-09 16:58

"Henning Smed" <henning at smeds dk> wrote in message
news:4b264bdf$0$8546$d40e179e@nntp06.dk.telia.net...
>
> Jeg har uden held forsøgt at få dine scripts til at fungere på den helt
> simple side:
> http://www.smeds.dk/SpareTst/Card/test.asp
> Kildekoden til test.asp og getdata.asp:
> http://www.smeds.dk/SpareTst/Card/test.txt
>
> Vil du kontrollere at jeg har placeret scriptene korrekt og at variabel
> navne er OK?

Det er de ikke, og jeg har også copy/pasted/skrevet forkert.

Ajax kan ikke køre på tværs af domæner, så jeg har copy/pasted data fra din
getdata.asp til en flad getdata.asp, så du kan se det virker.

Din sparetst.asp har jeg modificeret og lagt her:
http://w-o-p-r.dk/test/sparetst.asp
Her ligger Jacascripts i eksterne filer og refereres med disse 2 linier:
.....
<script type="text/javascript"
src="/javascript/callXMLHTTPRequest.js"></script>
<script type="text/javascript" src="sparetst.js"></script>
.....
endvidere har jeg rettet onchange til:
.....
<select name="Equipment" onchange="selectcard(this.value)"> <!-- her -->
.....
Funktion selectcard (som angivet i onchange) ligge i filen sparetst.js, og
kalder funktionen showcard ved afslutning.

I funktionen showcard sættes den næste selectbox med resultatet fra
getdata.asp med denne linie:
.....
document.getElementById('equipment').innerHTML = responsedata ;
.....

Se sparetst.asp:
.....
<div id="equipment">Her vises ny Select, afhænger af Equipment</div> <!--
her -->
.....

Bemærk, at resultatet fra getdata.asp indeholder denne linie:
.....
<select name="SerialNumberSpare" onchange="nyselection(this.value)">
.....

Altså en onchange til den næste funktion, her nyselection.

I dette eksempel er det bare en alert med de valgte værdier, men princippet
er, at hver select danner den næste select, via en 'select funktion', og en
'show funktion'.


> Hvordan ser jeg om scriptene køres og hvordan kan jeg fejlfinde?

Jeg bruger Firefox, og der er en god error console.
Ellers har jeg en debugger i min IE6, men jeg kan ikke huske hvor jeg fik
den fra.

> Når test siden fungerer kan jeg gå videre.

Denne her test fungerer hos mig ;)

--
Med venlig hilsen/Best regards
Stig Johansen




Ukendt (15-12-2009)
Kommentar
Fra : Ukendt


Dato : 15-12-09 08:00


"Stig Johansen" <wopr.dk@gmail.com> wrote in message
news:4b266066$0$280$14726298@news.sunsite.dk...
> "Henning Smed" <henning at smeds dk> wrote in message
> news:4b264bdf$0$8546$d40e179e@nntp06.dk.telia.net...
>>
>> Når test siden fungerer kan jeg gå videre.
>
> Denne her test fungerer hos mig ;)

Tak for dir svar og din store tålmodighed Stig.
Desværre fungerer dit eksempel http://w-o-p-r.dk/test/sparetst.asp ikke i
IE7 hos mig.
Jeg er på arbejde og kan ikke teste i FireFox eller andre browsere pga.
restriktioner fra IT afdelingen.

Mvh.
Henning



Stig Johansen (15-12-2009)
Kommentar
Fra : Stig Johansen


Dato : 15-12-09 12:41

"Henning Smed" <henning at smeds dk> wrote in message
news:4b2733f7$0$8558$d40e179e@nntp06.dk.telia.net...
> Desværre fungerer dit eksempel http://w-o-p-r.dk/test/sparetst.asp ikke i
> IE7 hos mig.

Det gjorde det heller ikke i IE6 hos mig.

Jeg har kun tjekket det i Firefox, men tilsyneladende sætter IE lighedstegn
mellem name og id, så når man laver en getElementById('equipment'), så fik
vi fat i den første kontrol med name:
.....
<select name="Equipment" onchange="selectcard(this.value)"> <!-- her -->
.....
Bemærk "equipment".

Jeg har ændret det til:
.....
<div id="selequipment">Her v..
.....
i asp filen, samt
.....
document.getElementById('selequipment').innerHTML...
.....
i JS filen.

Så nu virker det også i IE(6) her.

> Jeg er på arbejde og kan ikke teste i FireFox eller andre browsere pga.
> restriktioner fra IT afdelingen.

Hmm..
Nu skal vi ikke starte en religionskrig, men man burde da netop tillade eks.
FF, og forbyde IE ved besøg på eksterne sider.

--
Med venlig hilsen/Best regards
Stig Johansen




Ukendt (15-12-2009)
Kommentar
Fra : Ukendt


Dato : 15-12-09 13:14


"Stig Johansen" <wopr.dk@gmail.com> wrote in message
news:4b2775aa$0$282$14726298@news.sunsite.dk...
> "Henning Smed" <henning at smeds dk> wrote in message
> news:4b2733f7$0$8558$d40e179e@nntp06.dk.telia.net...
>> Desværre fungerer dit eksempel http://w-o-p-r.dk/test/sparetst.asp ikke i
>> IE7 hos mig.
>
> Det gjorde det heller ikke i IE6 hos mig.
>
> Jeg har kun tjekket det i Firefox, men tilsyneladende sætter IE
> lighedstegn
> mellem name og id, så når man laver en getElementById('equipment'), så fik
> vi fat i den første kontrol med name:
> ....
> <select name="Equipment" onchange="selectcard(this.value)"> <!-- her -->
> ....
> Bemærk "equipment".
>
> Jeg har ændret det til:
> ....
> <div id="selequipment">Her v..
> ....
> i asp filen, samt
> ....
> document.getElementById('selequipment').innerHTML...
> ....
> i JS filen.
>
> Så nu virker det også i IE(6) her.
>
Hej Stig.

Ja nu fungerer det fint i IE7, jeg haåbet at få tid til at bruge dine
scripts i løbet af ugen.

Mange tak for hjælpen.
Henning



Rune Jensen (15-12-2009)
Kommentar
Fra : Rune Jensen


Dato : 15-12-09 18:37

Stig Johansen skrev:

>> Jeg er på arbejde og kan ikke teste i FireFox eller andre browsere pga.
>> restriktioner fra IT afdelingen.
>
> Hmm..
> Nu skal vi ikke starte en religionskrig, men man burde da netop tillade eks.
> FF, og forbyde IE ved besøg på eksterne sider.

Tænker du i sikkerhed?

Problemet med FF er dens extensions, hvoraf nogle kan være sårbare,
fordi alle bare kan lave en sådan. Brugt rigtigt, er FF meget sikker,
for der findes også plug ins til at forøge sikkerheden, men man skal
ikke installere hvad somhelst, bare fordi det ser fancy ud, og man skal
forstå sine sikkerhedsplug ins.

Officielt: Google Chrome eller IE8 sammen med Vista eller Win7 kører i
en sand box, som efter sigende skulle være meget meget sikker. En
hackertest har også bevist dette.

Jeg hælder til Chrome i den forbindelse - simpelthen fordi den ikke har
særligt mange funktioner, er der bare mindre, som kan gå galt. Og så er
sikkerheden tænkt ind allerede fra start, det er den IKKE i IE, de har
måttet smække den ind, så den er kompatibel med IE6/7, hvilket skaber
nogle huller (en del er dog lappet). Om Chrome så også har
"brugeroplevelse", er en anden sag, der mangler en hel del efter min
smag, men hele Googles indgangsvinkel til deres browser set med hensyn
til sikkerhed, og hastighed iøvrigt også, er IMØ meget proft. Og mere
proft end Mozillas også. Jeg tror på, at Chrome er den næste browser,
folk vil bruge, hvis Google vel at mærke får lavet nogle ordentlige plug
ins og får gjort noget mere ved brugeroplevelsen.

Den mest brugervenlige browser til dato, Opera, er ikke særligt bevendt
rent sikkerhedsmæssigt ifht. Chrome, IE8 og FF, og Opera har da også
sagt/skrevet, de ikke har særlig fokus på sikkerhed. En stor fejl EMM,
når selv Mozilla har indset, at sikkerhed tæller i fremtiden. For det
vil netop tvinge firmaer til ikke at installere denne browser - som
altså er lysår foran andre i brugervenlighed.


MVH
Rune Jensen

Rune Jensen (15-12-2009)
Kommentar
Fra : Rune Jensen


Dato : 15-12-09 18:47

Rune Jensen skrev:

> Problemet med FF er dens extensions, hvoraf nogle kan være sårbare,
> fordi alle bare kan lave en sådan. Brugt rigtigt, er FF meget sikker,
> for der findes også plug ins til at forøge sikkerheden, men man skal
> ikke installere hvad somhelst, bare fordi det ser fancy ud, og man skal
> forstå sine sikkerhedsplug ins.

Jeg rodedr vidst lidt rundt i plug ins og extensions. Men plug in som
f.eks. Adobe Reader og Flash, som kan installeres til alle browsere, er
pt. hackernes foretrukne angrebsvinkel, så man kunne starte dér med at
installere alternativer til Adobe.

Som MS har Adobe det problem, at de aldrig har tænkt sikkerhed før,
derfor har de oceaner af arbejde at gøre for at sikre disse produkter.
Der går ikke én uge uden angreb på Adobes plug ins:

http://www.version2.dk/artikel/13220-hackere-misbruger-ny-adobe-saarbarhed-i-maalrettede-angreb#post51681


MVH
Rune Jensen

Ukendt (17-12-2009)
Kommentar
Fra : Ukendt


Dato : 17-12-09 17:36


"Stig Johansen" <wopr.dk@gmail.com> wrote in message
news:4b2775aa$0$282$14726298@news.sunsite.dk...
> "Henning Smed" <henning at smeds dk> wrote in message
> news:4b2733f7$0$8558$d40e179e@nntp06.dk.telia.net...
>> Desværre fungerer dit eksempel http://w-o-p-r.dk/test/sparetst.asp ikke i
>> IE7 hos mig.
>
> Det gjorde det heller ikke i IE6 hos mig.
>
> Jeg har kun tjekket det i Firefox, men tilsyneladende sætter IE
> lighedstegn
> mellem name og id, så når man laver en getElementById('equipment'), så fik
> vi fat i den første kontrol med name:
> ....
> <select name="Equipment" onchange="selectcard(this.value)"> <!-- her -->
> ....
> Bemærk "equipment".
>
> Jeg har ændret det til:
> ....
> <div id="selequipment">Her v..
> ....
> i asp filen, samt
> ....
> document.getElementById('selequipment').innerHTML...
> ....
> i JS filen.
>
> Så nu virker det også i IE(6) her.
>
Hej Stig,
Har du tid til at hjælpe mig endnu engang.
Mit eksempel findes nu på http://www.smeds.dk/SpareTst/test/Sparetst.asp og
mine spørgsmål er.
Er det muligt at sende værdien af det skjulte input felt i linje 1 når man
vælger en værdi i linje 2?
Dvs. overføre både "TerminalStation" og "Equipment" med 'onchange'.

Har du en ide til en elegant løsning på følgende:
Når brugeren 'Submitter' en formular, checker jeg normalt felternes indhold,
og viser information om en eventuel fejl på en ny asp side med en 'back'
knap, som går retur til formularen med javascript:history.go(-x).
Hvis du 'Submitter' min test side, og klikker 'Back' vises det valgte
indhold i line 2, men selvfølgelig ikke i line 3 da der ikke sker nogen
'onchange'.
Er jeg nødt til at have skjulte 'Input' felter og 'Submitte' værdierne igen
med 'Back' knappen, eller findes der en anden løsning?

På forhånd tak
Henning




Stig Johansen (17-12-2009)
Kommentar
Fra : Stig Johansen


Dato : 17-12-09 18:51

"Henning Smed" <henning at smeds dk> wrote in message
news:4b2a5ded$0$4804$d40e179e@nntp02.dk.telia.net...
> Mit eksempel findes nu på http://www.smeds.dk/SpareTst/test/Sparetst.asp
og
> mine spørgsmål er.
> Er det muligt at sende værdien af det skjulte input felt i linje 1 når man
> vælger en værdi i linje 2?

Ja, du kan sende stort set alt der er i html'et, og vælge det med en
passende id.

> Dvs. overføre både "TerminalStation" og "Equipment" med 'onchange'.
Hvis du ændrer din linie til:
.....
<input type="hidden" id="terminalstation" name="TerminalStation"
value="BBJ">
.....

Kan du bruge id'en i onchange, men også direkte i funktionen:
.....
function selectcard(station) {
var jsstation = getElementById('terminalstation').value ;

callXMLHTTPRequest('get',url,['station',station,'aspstation',jsstation],[],s
howcard,station,false,false,[]);

}
.....

Her har jeg kaldt variablene noget forskelligt, så det fremgår hvad der er
hvad.
terminalstation = id i html.
jsstation = javascript variabel, og kan lige så godt hedde terminalstation
aspstation = den værdi der skal bruges i Request.Querystring("aspstation")

> Har du en ide til en elegant løsning på følgende:
> Når brugeren 'Submitter' en formular, checker jeg normalt felternes
indhold,
> og viser information om en eventuel fejl på en ny asp side med en 'back'
> knap, som går retur til formularen med javascript:history.go(-x).
> Hvis du 'Submitter' min test side, og klikker 'Back' vises det valgte
> indhold i line 2, men selvfølgelig ikke i line 3 da der ikke sker nogen
> 'onchange'.
> Er jeg nødt til at have skjulte 'Input' felter og 'Submitte' værdierne
igen
> med 'Back' knappen, eller findes der en anden løsning?

Umiddelbart ville jeg nok tjekke mest muligt vha javascript, så det er ok
inden submit.

Back virker fint i FF, men ellers ved jeg ikke hvordan man skulle gemme
værdierne ud over som du siger med skjulte felter.

Kan det ikke tjekkes vha javascript?

--
Med venlig hilsen/Best regards
Stig Johansen




Ukendt (18-12-2009)
Kommentar
Fra : Ukendt


Dato : 18-12-09 10:23


"Stig Johansen" <wopr.dk@gmail.com> wrote in message
news:4b2a6f4f$0$276$14726298@news.sunsite.dk...
> "Henning Smed" <henning at smeds dk> wrote in message
> news:4b2a5ded$0$4804$d40e179e@nntp02.dk.telia.net...
>> Mit eksempel findes nu på http://www.smeds.dk/SpareTst/test/Sparetst.asp
> og
>> mine spørgsmål er.
>> Er det muligt at sende værdien af det skjulte input felt i linje 1 når
>> man
>> vælger en værdi i linje 2?
>
> Ja, du kan sende stort set alt der er i html'et, og vælge det med en
> passende id.
>
>> Dvs. overføre både "TerminalStation" og "Equipment" med 'onchange'.
> Hvis du ændrer din linie til:
> ....
> <input type="hidden" id="terminalstation" name="TerminalStation"
> value="BBJ">
> ....
>
> Kan du bruge id'en i onchange, men også direkte i funktionen:
> ....
> function selectcard(station) {
> var jsstation = getElementById('terminalstation').value ;
>
> callXMLHTTPRequest('get',url,['station',station,'aspstation',jsstation],[],s
> howcard,station,false,false,[]);
>
> }
> ....
>
> Her har jeg kaldt variablene noget forskelligt, så det fremgår hvad der er
> hvad.
> terminalstation = id i html.
> jsstation = javascript variabel, og kan lige så godt hedde terminalstation
> aspstation = den værdi der skal bruges i Request.Querystring("aspstation")

Tak det er lige hvad jeg har brug for.

>> Har du en ide til en elegant løsning på følgende:
>> Når brugeren 'Submitter' en formular, checker jeg normalt felternes
> indhold,
>> og viser information om en eventuel fejl på en ny asp side med en 'back'
>> knap, som går retur til formularen med javascript:history.go(-x).
>> Hvis du 'Submitter' min test side, og klikker 'Back' vises det valgte
>> indhold i line 2, men selvfølgelig ikke i line 3 da der ikke sker nogen
>> 'onchange'.
>> Er jeg nødt til at have skjulte 'Input' felter og 'Submitte' værdierne
> igen
>> med 'Back' knappen, eller findes der en anden løsning?
>
> Umiddelbart ville jeg nok tjekke mest muligt vha javascript, så det er ok
> inden submit.
>
> Back virker fint i FF, men ellers ved jeg ikke hvordan man skulle gemme
> værdierne ud over som du siger med skjulte felter.
>
> Kan det ikke tjekkes vha javascript?

Formularen kan helt sikkert tjekkes via Java script, men hidtil har jeg kun
brugt et færdigt Java script til tjek af dato og datoformat.
ASP if then else og en side med fejl beskrivelser har fungeret indtil nu.
Som sædvanligt har det der i 2002 startede som en simpel fejlrapport log,
udviklet sig til en webside med mange database tabeller og formularer.Så et
include script til formular tjek vil gøre mit arbejde lettere.

Som du helt sikkert har bemærket er jeg helt nybegynder i Java.
Kender du en god kursus udbyder, eller skal jeg bare gå i gang med at
modificere færdige scripts og spørge på User Net?

Mange tak for din hjælp og Glædelig Jul
Henning



Kim M. Jørgensen (11-12-2009)
Kommentar
Fra : Kim M. Jørgensen


Dato : 11-12-09 09:55

Går ud fra du søger noget som følgende
http://www.centauri.dk/livesearch/

Her kan du begynde at skrive By navne og efterhånden som man taster bliver
ens resultater begrænset.


"Henning Smed" <henning at smeds dk> skrev i en meddelelse
news:4b20df45$0$8550$d40e179e@nntp06.dk.telia.net...
> Hej.
> I en ASP MsSQL database har jeg brug for en løsning, så jeg i en formular
> kan søger efter et serienummer som indsættes i formularen. En select boks
> kan ikke bruges da databasen indeholder over 8.000 serienumre.
>
> Det har jeg har brug for er en select boks som viser serienumre baseret på
> de 3 første felter i formularen uden at submitte formularen.
>
> Mvh
> Henning
>
>



Kim M. Jørgensen (11-12-2009)
Kommentar
Fra : Kim M. Jørgensen


Dato : 11-12-09 10:00

Det er lavet med hjælp af følgende artikkel.
http://activedeveloper.dk/articles/412/

Håber det kan hjælpe dig videre.

"Kim M. Jørgensen" <kj-remove-@gidion.dk> skrev i en meddelelse
news:4b2208f3$0$36561$edfadb0f@dtext01.news.tele.dk...
> Går ud fra du søger noget som følgende
> http://www.centauri.dk/livesearch/
>
> Her kan du begynde at skrive By navne og efterhånden som man taster bliver
> ens resultater begrænset.
>
>
> "Henning Smed" <henning at smeds dk> skrev i en meddelelse
> news:4b20df45$0$8550$d40e179e@nntp06.dk.telia.net...
>> Hej.
>> I en ASP MsSQL database har jeg brug for en løsning, så jeg i en formular
>> kan søger efter et serienummer som indsættes i formularen. En select boks
>> kan ikke bruges da databasen indeholder over 8.000 serienumre.
>>
>> Det har jeg har brug for er en select boks som viser serienumre baseret
>> på de 3 første felter i formularen uden at submitte formularen.
>>
>> Mvh
>> Henning
>>
>>
>
>



Ukendt (14-12-2009)
Kommentar
Fra : Ukendt


Dato : 14-12-09 15:53


"Kim M. Jørgensen" <kj-remove-@gidion.dk> wrote in message
news:4b220a2b$0$36582$edfadb0f@dtext01.news.tele.dk...
> Det er lavet med hjælp af følgende artikkel.
> http://activedeveloper.dk/articles/412/
>
> Håber det kan hjælpe dig videre.
>
Tak for dit svar,
Stig Xfut'ede til clienside hvor han forsøger at hjælpe mig videre.

Mvh.
Henning



Søg
Reklame
Statistik
Spørgsmål : 177577
Tips : 31968
Nyheder : 719565
Indlæg : 6409071
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste