开发者

a strange $.get()

I have this code, a simple jQuery GET:

    $.get(url, params, function(){
      function_call()
    })

I wonder why the function_call() is never executed. The server at url is up and running and changing the function to $.ajax() shows no errors (the error option is not executed), but it's not working.

Any clue? params is a开发者_如何学编程 simple JS object of two fields, and of course I've used $.get() thousands of times with no problems.


Based on the information you've given (and the documentation), it should be working. Are you absolutely sure you're actually calling it (the $.get)? Can you create a minimal, self-contained example of the problem? (That does two things: 1. It usually helps you solve the problem yourself, because you figure it out in the process; 2. It gives us more to work with. :-) )

Alternately, anomareh mentioned (in a comment) the Same Origin Policy, which you might be running into.


Your syntax looks good. When something like this doesn't work for me, it's because I have a silly mistake at some other point, like a syntax error in the callback function or formulating the URL etc.

We would need to see a little more of your process to help more. Try making you're callback function only do a simple alert. Have an alert right before the $.get() is called, ideally spouting the URL. If you control the server functionality, put a breakpoint there (or whatever you need to do) to make sure the call is getting there. Switch back to $.ajax() and see if you get the error callback function called if you switch the URL to something bogus.

I guess I make so many dumb mistakes with my javascript/jquery, that I'm good with debugging ideas. :)


Have you tried a semicolon after function_call()?

The only other thing I would try is $.get(url, params, function_call) --- this will work only if your function call has no params -- take note that function_call intentionally does not have () after it.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜