Disable button onclick to prevent double submition

Today I had an simple task: to disable a button after a click to prevent double submitting the form data. I wanted to solve it as simple as possible. So here’s the final solution

<form method="POST" action="">
<input type="submit" value="Submit" name="submitBtn" onclick="this.disabled=true;this.form.submit();" >
</form>

It works like a charm – it disables the submit button and it submits the data.

NOTE
I have found a interesting bug in Chrome. My input button had its name set to “submit” (name=”submit”), but then chrome was reporting following error:

Uncaught TypeError: Property 'submit' of object #<HTMLFormElement> is not a function generate-form.php:onclick

The reason for the error when trying to call form.submit() is that your submit button is called “submit”. This means that the “submit” property of your Form object is now a reference to the submit button, overriding the “submit” method of the form’s prototype. Renaming the submit button allowed me to call the submit() method without that error, so I renamed it to “submitBtn”.

Tags: disable button onclick, onclick disable button, uncaught typeerror: property \submit\ of object #<htmlformelement> is not a function, javascript disable onclick after click, onclick disable, html disable button click event, onclick disable html input, onclick javascript disable, javascript div disable click events, salesforce onclick button disabling, javascript button disable click, html if button clicked disable it, html disable onclick, how to temporarily disable mouse click HTML, asp net actionlink disable on cllick, blur submit button onclick html, chrome onclick disabled, disable button javascript onclick, disable href onCLick, disable onclicktop, disabling button after click in chrome html, disabling button from click events in HTML, how to call click event when button disabled, how to disable hyperlink onclick event, a link onclick disable

Uncaught SyntaxError: Unexpected end of input error in Chrome

Today, while I was working with jQuery I ran on this error “Uncaught SyntaxError: Unexpected end of input” while troubleshooting my code in Chrome. And since Chrome it didn’t report error on any specific line I had to Google for it 🙂

And after opening few pages I found out that this error codes happens when you forget closing “}”. That can happen often when writing JavaScript and especially jQuery code. Locating that is not easy, especially if you’r code is sloppy and you have a lot of it. Luckily my code is always very nicely written so I got it solved quickly. But in case you’r code is really messy or is compressed (with some JavaScript compressing tool like jscompress.com) you can copy/paste your javascript code into jsbeautifier.org, click on “Beautify JavaScript” (select the options you want on the right side of the screen first) and see if all of the indentations are correct. Beautiful and Geeky.

Tags: Uncaught SyntaxError: Unexpected end of input, uncaught syntaxerror unexpected end of input line 1, unexpected end of input, uncaught, uncaught syntaxerror unexpected end of input, unexpected end of input line 1, javascript unexpected end of input line 1, javascript unexpected end of input, jquery unexpected end of input, uncaught syntaxerror: unexpected end of input line 1, syntaxerror: unexpected end of input, syntaxerror unexpected end of input, unexpected end of input js, decompression problem unexpected end of input file or i/o error, decompression problem unexpected end of input file or i o error, uncaught syntaxerror unexpected end of input jquery, UncaughtSyntaxError:UnexpectedendofinputerrorinChrome|GeekTipsnTricks, unexpected end of input javascript line 1, unexpected identifier jquery google home, unexpected end of JSON input at JSON parse, unexpected end of JSON input, unexpected end of json error when used php output in javascript, Error: unexpected input in, expected at end of input, javascript head insertbefore Unexpected end of input, Uncaught SyntaxError: Unexpected token < meteor, jquery html Unexpected end of input, json parse unexpected end of input, VM343:1 Uncaught SyntaxError: Unexpected end of JSON input