By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,380 Members | 1,621 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,380 IT Pros & Developers. It's quick & easy.

passing javascript variable into asp variable using vbscript

P: n/a
The subject pretty much sums up what I need to do. Here is what I
have so far, but still can't figure out how to get it working:

<script language="javascript" type="text/javascript">
function fillForm()
{
// split the query string into pieces
var qs = location.search.substr(location.search.indexOf("?" )+1);
qs = qs.split("&");
alert(qs); // qs is the variable that I need to pass into a
// vbscript var. This actually works up to here.
'<%the_name%>' = qs // this line does not work, but is what I need
// to do.
}
</script>
later in the code:
<%
Response.write ("<script>fillForm();</script>")
Response.write("This is the variable: " & the_name)
%>

On the page it obviously comes up as "This is the variable: " and that
is it...blank for the_name.

I need to use javascript to get the variables out of the url, such as:
http://www.x.com/test.asp?Dell%20Computer%20Corp
qs will then end up being "Dell Computer Corp" and I need to make a
vbscript variable to also be that so I can query/load/etc certain
stuff in asp to display on the site.

Thanks for your help!

- Jonas
Jul 20 '05 #1
Share this Question
Share on Google+
8 Replies


P: n/a
I don't think it is possible, because the vbscript (the server code) will
always be executed before the page ever reaches the browser where the
javascript is executed. Please correct me if I am wrong. I wish someone
would post a website or write a book on the subject of communication between
server-side and client-side scripts.

Phil

"Jonas Daunoravicius" <Jd************@questarcapital.com> wrote in message
news:fa*************************@posting.google.co m...
The subject pretty much sums up what I need to do. Here is what I
have so far, but still can't figure out how to get it working:

<script language="javascript" type="text/javascript">
function fillForm()
{
// split the query string into pieces
var qs = location.search.substr(location.search.indexOf("?" )+1);
qs = qs.split("&");
alert(qs); // qs is the variable that I need to pass into a
// vbscript var. This actually works up to here.
'<%the_name%>' = qs // this line does not work, but is what I need
// to do.
}
</script>
later in the code:
<%
Response.write ("<script>fillForm();</script>")
Response.write("This is the variable: " & the_name)
%>

On the page it obviously comes up as "This is the variable: " and that
is it...blank for the_name.

I need to use javascript to get the variables out of the url, such as:
http://www.x.com/test.asp?Dell%20Computer%20Corp
qs will then end up being "Dell Computer Corp" and I need to make a
vbscript variable to also be that so I can query/load/etc certain
stuff in asp to display on the site.

Thanks for your help!

- Jonas

Jul 20 '05 #2

P: n/a
I don't think it is possible, because the vbscript (the server code) will
always be executed before the page ever reaches the browser where the
javascript is executed. Please correct me if I am wrong. I wish someone
would post a website or write a book on the subject of communication between
server-side and client-side scripts.

Phil

"Jonas Daunoravicius" <Jd************@questarcapital.com> wrote in message
news:fa*************************@posting.google.co m...
The subject pretty much sums up what I need to do. Here is what I
have so far, but still can't figure out how to get it working:

<script language="javascript" type="text/javascript">
function fillForm()
{
// split the query string into pieces
var qs = location.search.substr(location.search.indexOf("?" )+1);
qs = qs.split("&");
alert(qs); // qs is the variable that I need to pass into a
// vbscript var. This actually works up to here.
'<%the_name%>' = qs // this line does not work, but is what I need
// to do.
}
</script>
later in the code:
<%
Response.write ("<script>fillForm();</script>")
Response.write("This is the variable: " & the_name)
%>

On the page it obviously comes up as "This is the variable: " and that
is it...blank for the_name.

I need to use javascript to get the variables out of the url, such as:
http://www.x.com/test.asp?Dell%20Computer%20Corp
qs will then end up being "Dell Computer Corp" and I need to make a
vbscript variable to also be that so I can query/load/etc certain
stuff in asp to display on the site.

Thanks for your help!

- Jonas

Jul 20 '05 #3

P: n/a
But surely if you are using ASP you can do the following:

URL : http://www.testsite.com/test.asp?Com...omputer%20Corp

<% varCompany = Request.QueryString("Company") %>
to extract from the URL to variable varCompany

and where you need to place the variable:

<%= varCompany %>

all in ASP
The only bit using VB of Javascript is the creation of the URL (which here I
am creating from items in a form, in the case of someone NOT using the
submit button!) And then reloading the page.

NewURL = "location.asp?";
var EleNum = 0;
var EleNumMx = document.plform.elements.length;
do {
if (document.plform[EleNum].type == "select-one") {
if (document.plform[EleNum].selectedIndex != 0) {
NewURL += document.plform[EleNum].name + "=" +
document.plform[EleNum].value + "&";
}
}
if(document.plform[EleNum].type == "text") {
if (document.plform[EleNum].value != 0 ) {
NewURL += document.plform[EleNum].name + "=" +
document.plform[EleNum].value + "&";
}
}
if(document.plform[EleNum].type == "textarea") {
if (document.plform[EleNum].value != 0 ) {
NewURL += document.plform[EleNum].name + "=" +
document.plform[EleNum].value + "&";
}
}
} while(++EleNum < EleNumMx);
window.location=NewURL;

Hope this helps

John Dobson

"AlwaysLearning" <ru****@nwlink.com> wrote in message
news:tM*****************@rwcrnsc52.ops.asp.att.net ...
I don't think it is possible, because the vbscript (the server code) will
always be executed before the page ever reaches the browser where the
javascript is executed. Please correct me if I am wrong. I wish someone
would post a website or write a book on the subject of communication between server-side and client-side scripts.

Phil

"Jonas Daunoravicius" <Jd************@questarcapital.com> wrote in message
news:fa*************************@posting.google.co m...
The subject pretty much sums up what I need to do. Here is what I
have so far, but still can't figure out how to get it working:

<script language="javascript" type="text/javascript">
function fillForm()
{
// split the query string into pieces
var qs = location.search.substr(location.search.indexOf("?" )+1);
qs = qs.split("&");
alert(qs); // qs is the variable that I need to pass into a
// vbscript var. This actually works up to here.
'<%the_name%>' = qs // this line does not work, but is what I need
// to do.
}
</script>
later in the code:
<%
Response.write ("<script>fillForm();</script>")
Response.write("This is the variable: " & the_name)
%>

On the page it obviously comes up as "This is the variable: " and that
is it...blank for the_name.

I need to use javascript to get the variables out of the url, such as:
http://www.x.com/test.asp?Dell%20Computer%20Corp
qs will then end up being "Dell Computer Corp" and I need to make a
vbscript variable to also be that so I can query/load/etc certain
stuff in asp to display on the site.

Thanks for your help!

- Jonas


Jul 20 '05 #4

P: n/a
I had actually figured out using what you Richard and John mentioned
yesterday late afternoon. You know how it is when you work on
something for hours and hours and then all of a sudden you just get it
to work! :) What you guys said makes sense though and my problem was
that I didn't know you could do all of that just in vbscript. It even
ends up being cleaner also. All I ended up doing, just like you guys
said is:

<a href=""tier2.asp?prod=" & i & """>" & i & "</a>
where i is a vbscript variable from a database

and then in the next page:
the_name = request.querystring("prod")

prod has %20 for spaces and the_name just has spaces. It is exactly
what I was looking for.

Thanks guys for you input.

- Jonas
Jul 20 '05 #5

P: n/a
I had actually figured out using what you Richard and John mentioned
yesterday late afternoon. You know how it is when you work on something
for hours and hours and then all of a sudden you just get it to work! :)
What you guys said makes sense though and my problem was that I didn't
know you could do all of that just in vbscript. It even ends up being
cleaner also. All I ended up doing, just like you guys said is:

<a href=""tier2.asp?prod=" & i & """>" & i & "</a>
where i is a vbscript variable from a database

and then in the next page:
the_name = request.querystring("prod")

prod has %20 for spaces and the_name just has spaces. It is exactly
what I was looking for.

Thanks guys for you input.

- Jonas

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Jul 20 '05 #6

P: n/a
To get the whole query string:

<%
the_name = Request.QueryString()
%>

You can pass it to client but not the other way around:

<script language="javascript">
var the_name = ""
</script>
<%
Dim the_name
the_name = Request.QueryString()
Response.write("the name is " & the_name)
Response.write("<script>the_name=""" & the_name & """;</script>")
%>
<script language="javascript">
alert(the_name)
</script>

--
Mike S.
Optimal Systems www.oscorp.com
"Jonas Daunoravicius" <Jd************@questarcapital.com> wrote in message
news:fa**************************@posting.google.c om...
I just noticed that if "&" is passed, after you do a querysting, it
drops everything passed the "&" even though vbscript variables can
hold & inside.

For instance, if the URL is www.x.asp/?prod="dell%20&%20ibm"
then if you do this on the next page:
the_name = request.querystring("prod")
it will only come up as "dell" instead of "dell & ibm"

Everything else seems to work fine, but this. Anyone have a
suggestion in how to avoid this?

Thanks

- Jonas

Jul 20 '05 #7

P: n/a
Mike, thanks so much...that is even better now cause now all I needed to do is:

the_name = Replace(the_name, "%20", " ")

and I get exactly what I want!

Thanks for all of your inputs...have a good July 4th.

- Jonas
Jul 20 '05 #8

P: n/a
Alternatively use the javascript escape function to encode your "&" into a
%Code. Then unescape it before using it.

Peter.

"Jonas Daunoravicius" <Jd************@questarcapital.com> wrote in message
news:fa**************************@posting.google.c om...
Mike, thanks so much...that is even better now cause now all I needed to do is:
the_name = Replace(the_name, "%20", " ")

and I get exactly what I want!

Thanks for all of your inputs...have a good July 4th.

- Jonas

Jul 20 '05 #9

This discussion thread is closed

Replies have been disabled for this discussion.