开发者

Ajax - maintaining state in the url - no #

I am working on an AJAX website where there are two search parameters. I did some mod-rewrite and checking for $_GET variables so that i can do something like..

site.com/var1/var2/ -> automatically do the search based on the parameters.

Now what I want is for people who do the search manually, to be able to have the url in that format. The only method that I've been able to find has to do w/modifying the url using..

location.hash = 'foo';

which would make it something like.. site.com/#var1

Which isn't as nice as the mod-rewrite. What I have found that works is if in my search function that does the ajax call i have this code

     // avoid appending further variables if there are already variables
     if(location.href == 'some absolute website path')
        location.href = var1+'/'+var2+'/';

This will work, but basically forces the page load and then my auto search php/javascript will kick in due to the mod-rewrite. SO this work开发者_Python百科s, however it involves an extra page refresh that I would rather avoid.

Any better solutions out there? Ideally if i was able to use location.href where it didn't cause the page to load once i change the value, but would just change in the url would be ideal (while maintaining my mod-rewrite links, w/out the # marks).

I am using jquery and php.


It's that way by design, there is no way yo change the url or path without causing a new request. Regards.

0

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜