Button value to be changed back to original value on timeout (form double submit)Prevent double submission of forms in jQueryJavaScript post request like a form submitChange the selected value of a drop-down list with jQueryTwo submit buttons in one formPrevent users from submitting a form by hitting EnterHow to prevent buttons from submitting formsjQuery disable/enable submit buttonjQuery AJAX submit formHTML button to NOT submit formCan I make a <button> not submit a form?Cannot display HTML string
Extract rows of a table, that include less than x NULLs
Why didn't Miles's spider sense work before?
How do I handle a potential work/personal life conflict as the manager of one of my friends?
Personal Teleportation: From Rags to Riches
GFCI outlets - can they be repaired? Are they really needed at the end of a circuit?
Why is this clock signal connected to a capacitor to gnd?
Why doesn't using multiple commands with a || or && conditional work?
In 'Revenger,' what does 'cove' come from?
How can I deal with my CEO asking me to hire someone with a higher salary than me, a co-founder?
Forgetting the musical notes while performing in concert
Detention in 1997
Intersection Puzzle
Alternative to sending password over mail?
Avoiding the "not like other girls" trope?
How to tell a function to use the default argument values?
Why is consensus so controversial in Britain?
Determining Impedance With An Antenna Analyzer
How writing a dominant 7 sus4 chord in RNA ( Vsus7 chord in the 1st inversion)
Examples of smooth manifolds admitting inbetween one and a continuum of complex structures
What does “the session was packed” mean in this context?
What is the idiomatic way to say "clothing fits"?
Is there a hemisphere-neutral way of specifying a season?
Why would the Red Woman birth a shadow if she worshipped the Lord of the Light?
Valid term from quadratic sequence?
Button value to be changed back to original value on timeout (form double submit)
Prevent double submission of forms in jQueryJavaScript post request like a form submitChange the selected value of a drop-down list with jQueryTwo submit buttons in one formPrevent users from submitting a form by hitting EnterHow to prevent buttons from submitting formsjQuery disable/enable submit buttonjQuery AJAX submit formHTML button to NOT submit formCan I make a <button> not submit a form?Cannot display HTML string
I am trying to fix a form double submit by disabling the submit button temporarily and changing the submit button value to "processing..." so the user knows what is going on.
The disable works onClick
and the "Submit" value changes to "processing...", however I am unable to change the value back to "Submit" after the setTimeout
function has ended.
Does anyone know how I could go about doing this?
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
setTimeout(function()
this.value = "Submit"; //<- this line doesn't work
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
javascript jquery html
add a comment |
I am trying to fix a form double submit by disabling the submit button temporarily and changing the submit button value to "processing..." so the user knows what is going on.
The disable works onClick
and the "Submit" value changes to "processing...", however I am unable to change the value back to "Submit" after the setTimeout
function has ended.
Does anyone know how I could go about doing this?
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
setTimeout(function()
this.value = "Submit"; //<- this line doesn't work
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
javascript jquery html
add a comment |
I am trying to fix a form double submit by disabling the submit button temporarily and changing the submit button value to "processing..." so the user knows what is going on.
The disable works onClick
and the "Submit" value changes to "processing...", however I am unable to change the value back to "Submit" after the setTimeout
function has ended.
Does anyone know how I could go about doing this?
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
setTimeout(function()
this.value = "Submit"; //<- this line doesn't work
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
javascript jquery html
I am trying to fix a form double submit by disabling the submit button temporarily and changing the submit button value to "processing..." so the user knows what is going on.
The disable works onClick
and the "Submit" value changes to "processing...", however I am unable to change the value back to "Submit" after the setTimeout
function has ended.
Does anyone know how I could go about doing this?
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
setTimeout(function()
this.value = "Submit"; //<- this line doesn't work
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
setTimeout(function()
this.value = "Submit"; //<- this line doesn't work
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
setTimeout(function()
this.value = "Submit"; //<- this line doesn't work
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
javascript jquery html
javascript jquery html
edited 2 days ago
Arend
3,53012137
3,53012137
asked 2 days ago
RobertRobert
616
616
add a comment |
add a comment |
5 Answers
5
active
oldest
votes
Just change this
to $("#submit_btn")
and it works:
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
The issue was that your functions were interfering with this
. You could have done self = this
which would have had the same effect:
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Or you could have used event.target
:
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
1
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
1
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
1
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
add a comment |
you just need to replace that line with the following code:
$("#submit_btn").val("Submit");
you should use val function to change the text of the button.
New contributor
add a comment |
$(function()
$("#submit_btn").click(function(event)
$('button').button( loadingText: 'Processing..' );
$('#submit_btn').button('loading');
//after submit stuff put below line to reset;
$('#submit_btn').button('reset');
);
);
above code work best when you used
html button in place of input type button
Note-- To Show Spin Icon inside Button put
font-awesome or any other icon in place of Processing.. or both in loadingText object
New contributor
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
add a comment |
$(document).ready(function()
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
outerthis = this;
setTimeout(function()
outerthis.value = "Submit";
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
);
New contributor
add a comment |
Problem about the wrong usage of this
keyword inside setTimeout()
has already been explained. However, if you are able to use arrow function expressions (ES6 feature), that won't be a problem:
An arrow function expression is a syntactically compact alternative to a regular function expression, although without its own bindings to the this, arguments, super, or new.target keywords.
Using this feature, your code can be simplified a little as shown on next example:
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55448780%2fbutton-value-to-be-changed-back-to-original-value-on-timeout-form-double-submit%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
5 Answers
5
active
oldest
votes
5 Answers
5
active
oldest
votes
active
oldest
votes
active
oldest
votes
Just change this
to $("#submit_btn")
and it works:
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
The issue was that your functions were interfering with this
. You could have done self = this
which would have had the same effect:
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Or you could have used event.target
:
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
1
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
1
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
1
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
add a comment |
Just change this
to $("#submit_btn")
and it works:
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
The issue was that your functions were interfering with this
. You could have done self = this
which would have had the same effect:
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Or you could have used event.target
:
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
1
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
1
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
1
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
add a comment |
Just change this
to $("#submit_btn")
and it works:
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
The issue was that your functions were interfering with this
. You could have done self = this
which would have had the same effect:
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Or you could have used event.target
:
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Just change this
to $("#submit_btn")
and it works:
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
The issue was that your functions were interfering with this
. You could have done self = this
which would have had the same effect:
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Or you could have used event.target
:
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
$("#submit_btn").val("Processing...");
setTimeout(function()
$("#submit_btn").val("Submit");
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function()
var self = this;
$(self).attr("disabled", "disabled");
$(self).val("Processing...");
setTimeout(function()
$(self).val("Submit");
$(self).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$(function()
$("#submit_btn").click(function(event)
$(event.target).attr("disabled", "disabled");
$(event.target).val("Processing...");
setTimeout(function()
$(event.target).val("Submit");
$(event.target).removeAttr("disabled");
, 5000);
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
edited 2 days ago
answered 2 days ago
Jack BashfordJack Bashford
14.7k31848
14.7k31848
1
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
1
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
1
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
add a comment |
1
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
1
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
1
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
1
1
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
Explanation is needed to understand why you did what you did (and I didn't downvote).
– LGSon
2 days ago
1
1
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
Oh yes @LGSon - I'll add that.
– Jack Bashford
2 days ago
1
1
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
Awesome thanks man. I swear I tried that approach before I posted this question... must have forgotten a semi colon or something lol, rookie mistake. I'll accept your answer in 3 minutes when stackoverflow allows me. Cheers!
– Robert
2 days ago
add a comment |
you just need to replace that line with the following code:
$("#submit_btn").val("Submit");
you should use val function to change the text of the button.
New contributor
add a comment |
you just need to replace that line with the following code:
$("#submit_btn").val("Submit");
you should use val function to change the text of the button.
New contributor
add a comment |
you just need to replace that line with the following code:
$("#submit_btn").val("Submit");
you should use val function to change the text of the button.
New contributor
you just need to replace that line with the following code:
$("#submit_btn").val("Submit");
you should use val function to change the text of the button.
New contributor
New contributor
answered 2 days ago
AnaghaAnagha
462
462
New contributor
New contributor
add a comment |
add a comment |
$(function()
$("#submit_btn").click(function(event)
$('button').button( loadingText: 'Processing..' );
$('#submit_btn').button('loading');
//after submit stuff put below line to reset;
$('#submit_btn').button('reset');
);
);
above code work best when you used
html button in place of input type button
Note-- To Show Spin Icon inside Button put
font-awesome or any other icon in place of Processing.. or both in loadingText object
New contributor
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
add a comment |
$(function()
$("#submit_btn").click(function(event)
$('button').button( loadingText: 'Processing..' );
$('#submit_btn').button('loading');
//after submit stuff put below line to reset;
$('#submit_btn').button('reset');
);
);
above code work best when you used
html button in place of input type button
Note-- To Show Spin Icon inside Button put
font-awesome or any other icon in place of Processing.. or both in loadingText object
New contributor
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
add a comment |
$(function()
$("#submit_btn").click(function(event)
$('button').button( loadingText: 'Processing..' );
$('#submit_btn').button('loading');
//after submit stuff put below line to reset;
$('#submit_btn').button('reset');
);
);
above code work best when you used
html button in place of input type button
Note-- To Show Spin Icon inside Button put
font-awesome or any other icon in place of Processing.. or both in loadingText object
New contributor
$(function()
$("#submit_btn").click(function(event)
$('button').button( loadingText: 'Processing..' );
$('#submit_btn').button('loading');
//after submit stuff put below line to reset;
$('#submit_btn').button('reset');
);
);
above code work best when you used
html button in place of input type button
Note-- To Show Spin Icon inside Button put
font-awesome or any other icon in place of Processing.. or both in loadingText object
New contributor
edited 2 days ago
New contributor
answered 2 days ago
Haider AliHaider Ali
213
213
New contributor
New contributor
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
add a comment |
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
it prevent multiple click (submit) until first click event completed by... disabling button by default ,,
– Haider Ali
2 days ago
add a comment |
$(document).ready(function()
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
outerthis = this;
setTimeout(function()
outerthis.value = "Submit";
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
);
New contributor
add a comment |
$(document).ready(function()
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
outerthis = this;
setTimeout(function()
outerthis.value = "Submit";
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
);
New contributor
add a comment |
$(document).ready(function()
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
outerthis = this;
setTimeout(function()
outerthis.value = "Submit";
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
);
New contributor
$(document).ready(function()
$(function()
$("#submit_btn").click(function()
$("#submit_btn").attr("disabled", "disabled");
this.value = "Processing...";
outerthis = this;
setTimeout(function()
outerthis.value = "Submit";
$("#submit_btn").removeAttr("disabled");
, 5000);
);
);
);
New contributor
edited 2 days ago
Arend
3,53012137
3,53012137
New contributor
answered 2 days ago
SINGH AAKASHSINGH AAKASH
192
192
New contributor
New contributor
add a comment |
add a comment |
Problem about the wrong usage of this
keyword inside setTimeout()
has already been explained. However, if you are able to use arrow function expressions (ES6 feature), that won't be a problem:
An arrow function expression is a syntactically compact alternative to a regular function expression, although without its own bindings to the this, arguments, super, or new.target keywords.
Using this feature, your code can be simplified a little as shown on next example:
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
add a comment |
Problem about the wrong usage of this
keyword inside setTimeout()
has already been explained. However, if you are able to use arrow function expressions (ES6 feature), that won't be a problem:
An arrow function expression is a syntactically compact alternative to a regular function expression, although without its own bindings to the this, arguments, super, or new.target keywords.
Using this feature, your code can be simplified a little as shown on next example:
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
add a comment |
Problem about the wrong usage of this
keyword inside setTimeout()
has already been explained. However, if you are able to use arrow function expressions (ES6 feature), that won't be a problem:
An arrow function expression is a syntactically compact alternative to a regular function expression, although without its own bindings to the this, arguments, super, or new.target keywords.
Using this feature, your code can be simplified a little as shown on next example:
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
Problem about the wrong usage of this
keyword inside setTimeout()
has already been explained. However, if you are able to use arrow function expressions (ES6 feature), that won't be a problem:
An arrow function expression is a syntactically compact alternative to a regular function expression, although without its own bindings to the this, arguments, super, or new.target keywords.
Using this feature, your code can be simplified a little as shown on next example:
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
$("#submit_btn").click(function()
$(this).attr("disabled", "disabled").val("Processing...");
setTimeout(
() => $(this).val("Submit").removeAttr("disabled"),
5000
);
);
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
edited 2 days ago
answered 2 days ago
ShiderszShidersz
9,7352933
9,7352933
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55448780%2fbutton-value-to-be-changed-back-to-original-value-on-timeout-form-double-submit%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown