Link to home
Start Free TrialLog in
Avatar of rickyr
rickyr

asked on

Frames Questions

Hi guys..........
I have three frames, I want to update the contents of two of the frames,
only when I click a submit buton in one of the frames.
The frame that has the button also has a text entry box, I would like to reset this after submission......
Frame1 has a button and a text box.
Frame2 is empty
Frame3 is empty.
When I click the button in Frame1, I want the contents of the text box aimed at a page in Frame2 AND another page loaded into Frame3 and the contents of the text box
to be reset.
Thanks
Avatar of estrauss
estrauss

I think a Javascript as follows will do what you want.


function accomplishthis(form)
{
parent.frame2.writeln(form.textboxname.value);
parent.frame3.location.href="whereever";
form.textboxname.value="";
}
<html><form> etc.


<input type="button" value="push me now!" onclick="accomplishthis(this.form)">
Avatar of rickyr

ASKER

Please describe whats going on, I don't know javascript.
Regards
ASKER CERTIFIED SOLUTION
Avatar of estrauss
estrauss

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of rickyr

ASKER

Ethan.....
Can I move the goal posts slightly?
My text box now gets reset! Fine.
I would now like to pass its contents on to another cgi and display the results of that in frame2. In other words, How do I define an ACTION
for (leaving fframe2 as the target?
Thanks for bearing with me.
regards
Ricky
I don't know how to deal with the cgi end of things. I assume that you can target the output of the cgi to a specific frame. An option using javascript would be to recieve the results of the cgi and assign them to a variable and then write that variable to the new frame. So it would looks something like:

var text=resultsofthecgi
parent.nameofframe2.writeln(text);

I don't know if that helps or not. Good Luck!
Ethan

Avatar of rickyr

ASKER

Ethan....................
You do not need to know anything about CGI. You know (in conventional html forms) how you can say
<FORM TARGET=myframename ACTION=my.cgi>
<INPUT> etc.........
</FORM>
well.....
I need to be able to specify an action in the form you supply.
In other words I want to direct the submission of the button we speak of to another web page......also........
I noticed that while my text box is reset, I'm actually getting a javascript error and nothing happens.
Thanks
Ricky
Sorry Ricky,
I think you have wandered out of my area of expetise :-( Do you have these pages up on the web somewhere? If you do, I could take a look and see what I can figure out, but I am not sure if I will get anywhere.
Ethan
Avatar of rickyr

ASKER

Works a treat!
Thanks Ethan.
Incidently how can I get the page to refresh itself
using ALL the existing cgi params that called it in the first place, I tried this with a...
http-equiv=refresh in the <Meta> tag. but this constantly refreshes itself over and over again, I just want this to occur once only.
You don't have to answer if you don't want to, I've graded you anyway, just after a freebee.
Thanks very much for all your help.
Cheers
Ricky
I believe you can add

document.location.reload()

to the end of the javascript.

I have never used this, but I think it ought to work.
Ethan
Avatar of rickyr

ASKER

The page I want refreshed after clicking on its links is not a form, has no scripts, In fact it  I actually want to go back and do a submit on the first frame after I have clicked on the href on frame2.
How can I push another frames button by clicking a href elsewhere
regards
Avatar of rickyr

ASKER

Or.....
How do I tell a web page that it must ALLWAYS go into a frame called "reply" of window called "view" regardless of the TARGET of the calling form.
regards
Avatar of rickyr

ASKER

Hmmm.
The popup works (it submits on change)  but the go button gives a javascript error, help.....

----------------------------------------------------
<HTML>
<HEAD>
<title>Assign to Team: AnyMedia web page</title>
<script language="javascript">;
function accomplishthis(form)
{
parent.choose.writeln(form.NAMESTART.value);
parent.main2.location.href="find";
form.NAMESTART.value="";
}
</script>
</HEAD>
<Body bgcolor=#EE9910>
<form name=myform method="GET" action="/assign/find" target="main2">
Search for Advert
<INPUT TYPE="text" NAME="NAMESTART" SIZE=20>
<input type="button" value="Go!" onclick="accomplishthis(this.form)">
<SELECT NAME=Team_Name onchange="document.myform.submit();">
<OPTION VALUE="roysteam">roysteam
<OPTION VALUE="Team One Gothenburg">Team One Gothenburg
<OPTION VALUE="Team One Stockholm">Team One Stockholm
<OPTION VALUE="Team Two Gothenburg">Team Two Gothenburg
<OPTION VALUE="Team Two Stockholm">Team Two Stockholm
</SELECT>
<INPUT TYPE="hidden" NAME=STATUS VALUE="Booked">
<INPUT TYPE="hidden" NAME=TASK VALUE="assign">
</form>
</Body>
</HTML>
---------------------------------------------------------------------------------------