Javascript probleem.

Pagina: 1
Acties:

  • akakiwi
  • Registratie: September 2000
  • Laatst online: 15-08-2024

akakiwi

I believe in the ruling class.

Topicstarter
Nou, daar gaan we dan. Durf het eigenlijk bijna niet te vragen maar ja.

Ik ben bezig met een pagina waarin een <form action='test1.asp' method='post' name='timesheet'> TAG zit. Nu wil ik meerder buttons aan dit form toevoegen, en wel.
Back
Print
Release
Save
Delete

De back button heeft gewoon een history.go(-1); actie
De print button window.print();
De release button document.timesheet.submit();
De release button document.timesheet.action='SaveHours.asp';document.timesheet.submit();
En de delete button document.timesheet.action='DeleteHours.asp';document.timesheet.submit();

Volgens mij zou dit gewoon moeten werken.

| Life is a game (and games are fun) | homepage |


  • Bas Jansen
  • Registratie: Juni 2000
  • Laatst online: 19-02 13:57
Die Release, Save en Delete buttons kan je veel beter in asp afhandelen:
Gewoon meerdere submit buttons maken met verschillende values:
<input type="submit" name="submit" value="Release">
<input type="submit" name="submit" value="Save">
<input type="submit" name="submit" value="Delete">

En dan kan je in je asp aan de waarde van de variabele submit zien welke knop is ingedrukt.

  • Martin Sturm
  • Registratie: December 1999
  • Laatst online: 12-02 13:47
Ja, moet werken. Het lijkt me dus handiger om ff de hele code te posten, dan kunnen we ff kijken of dat wel allemaal deugt. Wat hier staat lijkt redelijk correct te wezen :)

  • akakiwi
  • Registratie: September 2000
  • Laatst online: 15-08-2024

akakiwi

I believe in the ruling class.

Topicstarter
Ok, hier is de code. Moet je even het volgende weten.
GetButton en GetAnchorElement staan in de common.asp, en daar worden als het ware tables aangemaakt met daarin de link. Er moet dus perse een submit worden gegeven omdat het geen buttons zijn maar gewoon linkjes.

<body>
<form method="post" name="timesheet" action="../index.asp">
<input type="Hidden" name="user" value="<%=lcase(user)%>">
<input type="Hidden" name="action" value="<%=lcase(action)%>">
<input type="Hidden" name="userid" value="<%=userid%>">
<%=GetSeparator("400",Heading,true)%>
<table width=400 border=0 cellpadding=0 cellspacing=0>
<%select case lcase(user)
case "tempemployee"
dim objrs, strConnect
strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\temp\Users.mdb;" & _
"Persist Security Info=False"

set objrs = server.CreateObject("ADODB.RecordSet")
objrs.Open "Users",strConnect,adOpenForwardOnly,adLockReadOnly,adCmdTable
objrs.Filter = "TempID LIKE "+userid
%>

<table>
<tr>
<td width=150>Employee ID :</td><td><%=userid%></td>
</tr><tr>
<td width=150>Employee name :</td><td><%=objrs("name")%></td>
</tr><tr>
<td width=150>Job description :</td><td><%=objrs("job description")%></td>
</tr><tr>
<td width=150>Temp agency :</td><td><%=objrs("agency")%></td>
</tr>
</table>

<br>
<%objrs.Close%>
<%=CalculateWeekDay(userid, StartDate, Period, action)%>

<%case "admin"%>

<%case "agency"%>

<%end select%>
</td></tr>
<tr><td colspan=<%= 2 + period%>>
<%response.write(GetButtonBarStart())
response.write(GetButton(GetAnchorElement("", Array( "~", "history.go(-1);"), "class=""btn""", "Back")))
response.write(GetButton(GetAnchorElement("", Array( "~", "window.print();"), "class=""btn""", "Print")))
response.write(GetButton(GetAnchorElement("", Array( "~", "document.timesheet.submit();"), "class=""btn""", "Release")))
response.write(GetButton(GetAnchorElement("", Array( "~", "document.timesheet.FormAction.value='SaveHours.asp';"), "class=""btn""", "Save")))
response.write(GetButtonBarEnd())%>
</td></tr>
</table>

<%
if lcase(action) = "timesheet" then
Javascript = ""
Javascript = Javascript & "<script language='Javascript'>" & vbCrLf
Javascript = Javascript & "<!--" & vbCrLf
Javascript = Javascript & "Total('een','toteen');" & vbCrLf
Javascript = Javascript & "Total('twee','tottwee');" & vbCrLf
Javascript = Javascript & "Total('drie','totdrie');" & vbCrLf
Javascript = Javascript & "Total('vier','totvier');" & vbCrLf
Javascript = Javascript & "Total('vijf','totvijf');" & vbCrLf
Javascript = Javascript & "//-->" & vbCrLf
Javascript = Javascript & "</script>" & vbCrLf
response.write Javascript
end if
%>

</form>

Bij deze link kun je even naar de code kijken als ie gegenereerd is. :)

Alvast hartstikke bedankt.

| Life is a game (and games are fun) | homepage |


  • akakiwi
  • Registratie: September 2000
  • Laatst online: 15-08-2024

akakiwi

I believe in the ruling class.

Topicstarter
iemand??
Pliezzzz??

Ben vrij desperate. Ben al twee dagen aan het klooien en krijg het niet getweaked.

| Life is a game (and games are fun) | homepage |


  • RM-rf
  • Registratie: September 2000
  • Laatst online: 20-02 18:09

RM-rf

1 2 3 4 5 7 6 8 9

sorry ben geen ASP-kenner, met het gevaar dat ik je niet helemaal de juiste richting op help..:

Je formulier lijkt niet te submitten aangezien er geen document.form.submit in zit <BLOCKQUOTE><font size=1 face=Verdana, Arial, Helvetica>quote:</font><HR><a href="javascript:document.timesheet.FormAction.value='SaveHours.asp';" class="btn">Save</a>[/quote]het HREF element kan dachtik ook eigenlijk maar 1 actie aan, beter is het om beide acties of in een functie te zetten, of er een onClick-action voor te gebruiken (onMousedown is nog netter)

gewoon echte buttons gebruiken lijkt me ook duidelijker <INPUT TYPE="button" onMouseDown="javascript:blah();">
uiteindelijk zou ik ook het verschil tussen 'save' en 'delete' niet in javascript laten gebeuren maar in de serversidescripting (in dit geval ASP) en buttons gewoon een NAME geven die dan wordt meegestuurd, een referrer-scipt splitst dan op.

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • akakiwi
  • Registratie: September 2000
  • Laatst online: 15-08-2024

akakiwi

I believe in the ruling class.

Topicstarter
Probleem is dat we met een programmeer protocol werken dat het verbied om gewone buttons neer te knallen. We moeten dus perse de <a href...>jes gebruiken.
De form.timesheet.submit(); gebruik ik wel, maar ik was wat aan het klooien in de code en heb per ongeluk de verkeerde gepost. Sorry.

Dat idee van die functie had ik ook al uitgewerkt, maar dan loopt ie zonder foutmelding vast op het form.timesheet.action.value='SaveHours.asp':(

Iig bedankt voor de tips, maar ik had ze al geprobeerd. Hopen dat het nog wordt opgelost. Op andere fora weten ze ook niet wat het is, omdat de code gewoon goed is.

| Life is a game (and games are fun) | homepage |


  • RM-rf
  • Registratie: September 2000
  • Laatst online: 20-02 18:09

RM-rf

1 2 3 4 5 7 6 8 9

ai foutmelding zal zeker zijn 'action is not an object' of anders 'action.value is not defined'

document.form.action is zelf de value (tag is FORM en ACTION is een argument hiervan)

probeer es document.form.action='pagina.asp'

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • akakiwi
  • Registratie: September 2000
  • Laatst online: 15-08-2024

akakiwi

I believe in the ruling class.

Topicstarter
Ja sorry, maar dat bedoel ik ook. Form.action. Ik had eerst mbv een hidden field de value daaruit gehaald en die dan in de action gezet, omdat dat ook zo in het voorbeeld van MS stond.

Laat maar, ben veel te lam nu om nog iets zinnigs op te schrijven en over programmeren na te denken. wmb mag dit draadje worden gesloten.

| Life is a game (and games are fun) | homepage |

Pagina: 1