Solved

post javascript variable and selectlist value simultaneously to php file

Posted on 2009-07-15
6
215 Views
Last Modified: 2012-05-07
I have an html form with a select list and a submit button. I want to pass both the select list value and a separate javascript variable to the same php file simultaneously on the click of the submit button. Can anyone point me in the right direction?
0
Comment
Question by:geoffcoles
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
6 Comments
 
LVL 12

Expert Comment

by:Barry Jones
ID: 24858572
Use the form onsubmit handler to set a hidden form input elements' value to that of the javascript variable before posting.  See code below (untested):
<script type="text/javascript">
  fnPostForm = function(){
    var frm = document.getElementById("frmThis");
    var js_var = document.getElementById("js_variable");
    js_var.value = my_javascript_variable;
    frm.submit();
    return true;
  }
</script>
 
<form id="frmThis" action="script.php" method="post" onsubmit="return fnPostForm();">
  <fieldset>
    <input id="js_variable" name="js_variable" value="" />
    ...
      Other form fields, selects etc
    ...
    <input type="submit" id="cmdSubmit" value="Submit" />
  </fieldset>
</form>

Open in new window

0
 
LVL 12

Expert Comment

by:Barry Jones
ID: 24858584
Actually you dont need the line frm.submit() in the above code..
0
 
LVL 12

Accepted Solution

by:
Barry Jones earned 250 total points
ID: 24858590

<script type="text/javascript">
  fnPostForm = function(){
    document.getElementById("js_variable").value = my_javascript_variable;
    return true;
  }
</script>
 
<form id="frmThis" action="script.php" method="post" onsubmit="return fnPostForm();">
  <fieldset>
    <input id="js_variable" name="js_variable" value="" />
    ...
      Other form fields, selects etc
    ...
    <input type="submit" id="cmdSubmit" value="Submit" />
  </fieldset>
</form>

Open in new window

0
WordPress Tutorial 1: Installation & Setup

WordPress is a very popular option for running your web site and can be used to get your content online quickly for the world to see. This guide will walk you through installing the WordPress server software and the initial setup process.

 
LVL 14

Expert Comment

by:profya
ID: 24858902
Try this simple code:
</script>
<form mathod="post" action="target.php" name="form1" onsubmit="return function1();">
<select name="select1">
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="hidden" name="myvar" >
<input type="submit" value="submit">
</form>

Open in new window

0
 
LVL 14

Expert Comment

by:profya
ID: 24858911
Sorry,
<script type="text/javascript">
function function1()
{
	document.forms[0].elements['myvar'].value="new value";
	return true;
}
</script>
<form mathod="post" action="target.php" name="form1" onsubmit="return function1();">
<select name="select1">
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="hidden" name="myvar" >
<input type="submit" value="submit">
</form>

Open in new window

0
 

Author Closing Comment

by:geoffcoles
ID: 31603682
Thanks so much for this solution!
0

Featured Post

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

3 proven steps to speed up Magento powered sites. The article focus is on optimizing time to first byte (TTFB), full page caching and configuring server for optimal performance.
There are times when I have encountered the need to decompress a response from a PHP request. This is how it's done, but you must have control of the request and you can set the Accept-Encoding header.
The viewer will learn how to dynamically set the form action using jQuery.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

630 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question