We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now

x

<a> tag's "onclick" event not working

Ravi Kalla
Ravi Kalla asked
on
Medium Priority
381 Views
Last Modified: 2012-05-07
in the attached code snippet, onclick event is not working.

When i click on the "SUBMIT" link, i'm able to see the alert box with message "Came HERE". But, "frmNew" is not submitted.
Please let me know if i need to do anything in "fun()" without changing anything in the anchor tag <a>
<a id="errBoxCloseLink" href="javascript:void(0);" onclick="fun()" style="color:white;font-weight:bolder;text-decoration:none" title="Close Errors" linkcontrol="ignore">SUBMIT</a>
 
<script>
function fun()
{
    alert("Came HERE");
    document.forms["frmNew"].submit();
}
</script>

Open in new window

Comment
Watch Question

Are you defining the form name?

<form name="frmNew">
<a id="errBoxCloseLink" href="javascript:void(0);" onclick="fun()" style="color:black;font-weight:bolder;text-decoration:none" title="Close Errors" linkcontrol="ignore">SUBMIT</a>
</form>

<script>
function fun()
{
    alert("Came HERE");
    document.forms["frmNew"].submit();
}
</script>

?
Hi,

remove the style attribute from the line and use:

<a id="errBoxCloseLink" href="javascript:void(0);" onclick="fun()" class="vClass" title="Close Errors" linkcontrol="ignore">SUBMIT</a>

and then

<style type="text/css">
a.vClass:link {color: blue;}
</style>

Hope this will help you.

Regards
hi,

sorry..you should check if there you defined the form name as commented by  ' Valleriani: '

Regards
Ravi KallaTechnology Lead

Author

Commented:
yes... i have already defined the form name as in the attached code
 

<script>
function fun()
{
    alert("Came HERE");
    document.forms["frmNew"].submit();
}
</script>
 
<a id="errBoxCloseLink" href="javascript:void(0);" onclick="fun()" style="color:black;font-weight:bolder;text-decoration:none" title="Close Errors" linkcontrol="ignore">SUBMIT</a>
 
<form name="frmNew">
</form>

Open in new window

Tested in IE/FF, they seem to be both submitting though. (Page is reloading basicly)

Can we get some more details? Is it tied in another script? Browser version? etc?

Commented:
You might wanna try running these on some other browsers.
Ravi KallaTechnology Lead

Author

Commented:
i'm able to submit by changing the value of "href" to "javascript:fun()"
Hrm, could void(0) be interfering with some browsers? Could try:

<a id="errBoxCloseLink" href="#" onclick="fun()" style="color:white;font-weight:bolder;text-decoration:none" title="Close Errors" linkcontrol="ignore">SUBMIT</a>
Full stack Java developer
CERTIFIED EXPERT
Commented:
Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION
b0lsc0ttIT Manager
CERTIFIED EXPERT

Commented:
Ravi_Kalla,
I am going to post this as an objection.  The expert's post at http:#a24793997 has the key to your solution.  You need return false to follow the script or the browser just goes to the href as a natural next step.
The reason I post this as an objection is it isn't correct to have javascript in the href tag.  Depending on the doctype and browser you could even have problems.  Even the "javascript: void(0);" code isn't recommended in href anymore.  It is better to use # (as suggested in http:#a24793550) or even best to provide an html page that will show some "Javascript needs to be supported" message.  The key is the proper fix isn't to move the Javascript but to use return false so the event handling stops.
Let me know if you have a question about this.  It is worth changing your code because, even if the comment above was posted after you started closing this, it is the correct answer and way to do this.
b0lsc0tt
Murali MurugesanFull stack Java developer
CERTIFIED EXPERT

Commented:
Should there be a points split?

-Murali*
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.