-
Notifications
You must be signed in to change notification settings - Fork 5.3k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
ui.tabs _isLocal fails if url contains username:password@ #2213
Comments
Thanks for the report. Does the issue you describe exist when jQuery UI 1.12.1 is used or only with jQuery UI 1.13.0 or newer? Also, please provide a runnable test case on a platform like JS Bin. |
Sorry, I'm not a JavaScript dev. The function is depending on username + password being in the url, so a 1:1 example with any code plattform is unlikely to work. The code in latest git seems to be the same. The culprit is that the anchor and location can have different values for the same URL. |
I understand but we cannot do much without a test case. One thing you may be able to help with is saying whether jQuery UI 1.12.1 exhibits the same issue. You can find links to all releases on https://releases.jquery.com. |
Please check https://jsbin.com/rinenupiba/edit?html,js,output I faked _isLocal with user+password in location: Rendering of the page will change if you revert that line. |
It's not clear to me what the JS Bin is supposed to show. Can you use the stock version of jQuery UI without repeating its source in the JS pane and explain exactly what you expect to happen in this test case and what is happening instead? |
BTW, the |
The way browser and JS bin work, make it impossible to reproduce it (at least for me). I cannot call JS bin like https://user:password@jsbin.com. The problem is quite easy: anchor.href behaves differently than location.href - it just does not contain the user:password part. |
OK, my last comment about issues shared with 1.12 still stands, though. |
Same issue here : #tabs- links causes the whole page to be reloaded for ever on the tabs :( When I copy the URL, remove the "username:password@" part and paste it on it on the browser, then it works as expected. My (bad hack) solution is to open the page through a popup, with an absolute link and without the credentials on it (not needed when already authenticated) |
I had some really ugly problems with some jquery ui tab component and could pin it down to a wrong calculation in _isLocal.
decodeURIComponent(e) returns https://username:password@serverfqdn/path/file
decodeURIComponent(i) returns https://serverfqdn/path/file
These two are compared and the difference causes the return value to be false instead of true.
Therefore, the whole render logic breaks...
The text was updated successfully, but these errors were encountered: