1

I have an event to capture when the return key is pressed on a form input field, but the ajax call is not fired, instead the from is submitted as a normal http request.

$("#addurl").keypress(function(e){
        switch(e.keyCode){
            case 13:
                // add url ajax call
                $("body").html(ajax_load)
                .load(loadUrl,{url:$("#addurl").value},function(responseText){
                    $("#videos").append(responseText);
                }
                return false;
        }
    });

...

<form><input id="addurl" name="addurl"/></form>

The case 13 statement was fired correctly when I tested with alert("hi") so why is the ajax call not taking the place of a normal full-blown http request?

2 Answers 2

4

you can just use

$(document).ready(function(){
//capture the form submission event
$("#formID").submit(function(){
   //do something
   return false;  
});

});

Sign up to request clarification or add additional context in comments.

1 Comment

A better method but I accepted the other answer as it accomplishes explicitly what I asked, cheers
1
$("#inputBoxId").keypress(function(e){            
        if(e.keyCode==13)
         {
            e.preventDefault();  /// add prevent default
            //your code here

         }
    });

1 Comment

I think you'd want to move the preventDefault() into the case 13: block -- you know, so that the data the user enters actually gets entered.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.