Avatar billede leasing Nybegynder
01. juni 2010 - 14:25 Der er 9 kommentarer og
2 løsninger

OnSubmit på en form

Jeg har en login form hvor 3 felter skal submit´es videre til en anden siden for at kunne logge ind.
Koden ser således ud:

<html style="background-color:transparent">

<head>
<title></title>
<script>

function redirecttologin()
{
    var companyvalue ='nocompany';
    var namevalue ='noname';
    var passwordvalue = 'nopassword';
    var companyinput = document.getElementById('company');
    if (companyinput)
        companyvalue = companyinput.value;
    var nameinput = document.getElementById('username');
    if (nameinput)
        namevalue = nameinput.value;
    var passwordinput = document.getElementById('password');
    if (passwordinput)
        passwordvalue = passwordinput.value;   
    var href = '' + location.href;
    window.location.href = "http://www.x.dk/nav.aspx?action=loginiframe&company=" + companyvalue + "&name=" + namevalue + "&password=" + passwordvalue;
}

</script>
<style type="text/css">
  TD {FONT-SIZE: 11px; FONT-FAMILY: Arial; COLOR: #4B4B4B}
  .textfield  {BORDER-RIGHT: #D5DEE9 1px solid; BORDER-TOP: #D5DEE9 1px solid; FONT-SIZE: 11px; BORDER-LEFT: #D5DEE9 1px solid; COLOR: #000000; BORDER-BOTTOM: #D5DEE9 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif}
  .button  {BACKGROUND-IMAGE: url(http://www.x.dk/files/sysadmins/Grafik/login.gif); BORDER-BOTTOM: #30b457 0px solid; BORDER-LEFT: #30b457 0px solid; PADDING-BOTTOM: 1px; PADDING-LEFT: 0px; WIDTH: 40px; PADDING-RIGHT: 0px; FONT-FAMILY: Arial; FLOAT: none; HEIGHT: 17px; COLOR: #ffffff; FONT-SIZE: 11px; BORDER-TOP: #30b457 0px solid; BORDER-RIGHT: #30b457 0px solid; PADDING-TOP: 0px; cursor=pointer}
</style>

</head>
<body style="background-color:transparent">

<form name="form1" onsubmit="redirecttologin();">
<TABLE style="MARGIN-LEFT: -10 px; MARGIN-TOP: 10px" border=0 cellSpacing=0 cellPadding=0>
    <tr>
        <td width=110>Virksomhed</td>
        <td width="8"> </td>
        <td align="left" colspan="2"><input class="textfield" name="company" type="text" id="company" size="20" maxlength="20"></td>
    </tr>
    <tr>
        <td width=110>Bruger</td>
        <td width="8"> </td>
        <td align="left" colspan="2"><input class="textfield" name="username" type="text" id="username" size="20" maxlength="20"></td>
    </tr>
    <tr>
        <td width=110>Kodeord</td>
        <td width="8"> </td>
        <td align="left"><input class="textfield" name="password" type="password" id="password" size="12" maxlength="20">
        <input class="button" type="submit" value="Login"></td>                                                   
    </tr>
</table>
</form>

</body>
</html>


Jeg kan ikke få det til at virke med onSubmit i form tag´et.
Hvis jeg laver mit form tag således, så virker det fint:
<form name="form1">
<TABLE style="MARGIN-LEFT: -10 px; MARGIN-TOP: 10px" border=0 cellSpacing=0 cellPadding=0>
    <tr>
            <td width=110>Virksomhed</td>
                <td width="8"> </td>
                <td align="left" colspan="2"><input class="textfield" name="company" type="text" id="company" size="20" maxlength="20"></td>
    </tr>
        <tr>
                <td width=110>Bruger</td>
                <td width="8"> </td>
                <td align="left" colspan="2"><input class="textfield" name="username" type="text" id="username" size="20" maxlength="20"></td>
        </tr>
        <tr>
                <td width=110>Kodeord</td>
                <td width="8"> </td>
                <td align="left"><input class="textfield" name="password" type="password" id="password" size="12" maxlength="20"></td>                                                       
                <td align="left" onclick="redirecttologin();" class="button"> Login</td>
        </tr>
</table>
</form>

ulempen er så nu, at der bruges onclick og dvs. så kan jeg ikke bruge enter knappen for at logge ind, men udelukkende musen. Det er jo ikke så smart overfor brugeren.

Håber der er nogen der har en løsning. På forhånd tak.
Avatar billede majbom Novice
01. juni 2010 - 14:50 #1
du siger du ikke kan få den til at virke - hvad betyder det?

sker der intet? eller?

prøv:

<form onsubmit="return redirectlogin();" action="">
Avatar billede leasing Nybegynder
01. juni 2010 - 15:08 #2
Lige lidt mere info.

loginfelter kaldes via y.dk
Når jeg anvender onsubmit dvs. trykker på enter efter indtastning af company, username og password bliver alle felter blanke, og i adresselinien står der følgende:
http://www.y.dk/files/sysadmins/wsfn/iframetest.html?company=x&username=x&password=x

Jeg skulle gerne videre til x.dk ifølge det link der står i function redirecttologin().

Så der sker et eller andet, men den linker ikke til den rigtige adresse.

Håber du kan bruge det til noget.
Avatar billede leasing Nybegynder
01. juni 2010 - 15:10 #3
Har prøvet
<form onsubmit="return redirectlogin();" action="">
men ingen held.
Avatar billede intenz Novice
01. juni 2010 - 16:22 #4
Tilføj:
return false;

nederst i redirecttologin().

Når du bruger:
<form onsubmit="return redirectlogin();" action="">

Skal du bruge return false for at sikre, at formularen submittes også.
Avatar billede leasing Nybegynder
02. juni 2010 - 09:12 #5
Så virker det...svare du lige.
Tak for hjælpen.
Avatar billede majbom Novice
02. juni 2010 - 09:18 #6
årh, ja den glemte jeg da lige at tilføje
Avatar billede intenz Novice
02. juni 2010 - 09:59 #7
Det må være splazz's point, mit bidrag var bare en lille glemt detalje :)
Avatar billede majbom Novice
02. juni 2010 - 11:37 #8
lad os dele de 100 så ? :)
Avatar billede majbom Novice
02. juni 2010 - 11:37 #9
skulle have været et svar...
Avatar billede intenz Novice
02. juni 2010 - 12:52 #10
Ja, det kan vi godt :)
Avatar billede majbom Novice
02. juni 2010 - 19:04 #11
tfp :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester