What Happens If The Action Field in a <Form> Has Parameters

What happens if the action field in a form has parameters?

If the method attribute is set to GET, the browser drops the querystring parameters from the action attribute before constructing the form argument values.

So in your example, the request to the server on submit will look like: /somePage.html?param2=value¶m3=value

So no, when the method is "GET", as in your example, there's no reason to do this.

POST forms: How to put GET parameters in action attribute?

If you absolutely need to put it on action attribute you can use method="POST".

<!DOCTYPE html>
<html>
<body>
<form action="draft.html?test=1" method="POST">
<button type="submit">Valid</button>
</form>
</body>
</html>

Otherwise if you want to send your data trough GET use

<!DOCTYPE html>
<html>
<body>
<form action="draft.html" method="GET">
<input type="hidden" name="test" value="1">
<button type="submit">Valid</button>
</form>
</body>
</html>

How can I fill the action parameter of a form with values from the form's input?

  • Thanks to RobG

  • I have used the same thing in calling WhatsApp from mobile application

  • It works beautifully

    <form action="https://wa.me/" 
    onsubmit="this.action = this.action + this.mobile.value; this.submit();">
    <input type="tel" name="mobile" size="10" value="91xxxxxxxxxx"/>
    <input type="text" name="text" value="Thanks Vijayan!" />
    <input type="submit" value="WhatsApp" />
    </form>

JSP send parameter to servlet in form action field

finally I found a solution...

if you want to pass a parameter in the form action, you have a workaround by using a input hidden field:

<input type='hidden' name='numero' id='numero' value="${numero}" />

I didn't found a solution to integrate dynamic content to the action form but it remains the same !

django - what goes into the form action parameter when view requires a parameter?

You are posting to the same view that also serves the form. So at first, the view is called and serves the form. When you post the form, the same view gets called but this time you process the form. That's why the action is empty.

Pass parameter to form action in HTML

If you want to do it through HTML....

Instead of

<form action="processupload.php?clientID=" <?php echo $clientID ?> method="post" enctype="multipart/form-data" id="MyUploadForm">

Try this:

<form action="processupload.php?clientID=<?php echo $clientID ?>" method="post" enctype="multipart/form-data" id="MyUploadForm">

If that still doesn't work (some servers don't like mixing POST and GET), then try swapping for this:

<form action="processupload.php" method="post" enctype="multipart/form-data" id="MyUploadForm">
<input type="hidden" name="clientID" value="<?=$clientID;?>" />
<!-- the rest of your form -->
</form>

And then in your PHP file, swap the $_GET for $_POST.

Form submission with a ?key=val query string already in the action attribute ignores that query string

I know this is an old question, but the solution is actually pretty simple (and neat!).

All you have to do is sending the querystring with hidden input fields in the format name="key" and value="value".

?brandcode=JM&t=cat_items would "translate" into:

<input type="hidden" name="brandcode" value="JM" />
<input type="hidden" name="t" value="cat_items" />

Completely remove the querystring from your action.



Related Topics



Leave a reply



Submit