开发者

detecting if a request is a post in jQuery

I'm trying to load a page differently if it is a post or a get, and seems like jQuery would have something so I could do

    if (isPost()) 
    { 
      // do something if this page was a post 
    }

I'm showing/hiding something based on the request type and want to do it specifically with javascript. I can easily do it w开发者_开发百科ith the framework I'm using, but don't want to.


The problem here is that you are confusing client-side with server-side.

GET, POST, PUT, DELETE, etc are all HTTP 'methods' that are sent to a server from the client (e.g.: the browser). The server then responds with the appropriate HTTP response, normally in the form of content that contains HTML.

POST/GET/etc have no context at the client side outside of dictating how a request should be sent to the server.

Think of the browser being your postal mailbox and POST/GET/etc being the method it was delivered. When someone sends you a piece of mail, they specify the method, such as first-class mail, overnight express, or same-day delivery. The Post Office handles the mail based on how it was received and sends the mail using the appropriate action. When you pick up your mail in the mailbox, you don't know if it got there via standard mail, overnight express, or same-day delivery. The only way you would know is any information that is on the envelope itself.

The solution to your problem would would follow this same principal. To resolve it, what you will need to do is include a hidden value that jQuery can pull in, either in the query-string, a special element, or as a hidden textbox that contains the HTTP method used to get the page.

This requires that server-side code be changed accordingly to push that information back to the client.

Hope that helps clear it up a bit.


i don't know if this is really possible in javascript. But you can check if there is a query string which is GET in the URL

if (location.search.length > 1) {
   // your code.

}

location.search returns the query string in the URL

http://example.com/index.html?id=1&value=3

in this case location.search will be ?id=1&value=3 including the question mark.

so if it is present then you have a GET

0

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜