问题
I'm working now in a file manager to be used in my simple cms and I have a problem in jquery load function when it takes a path contain spaces . is there any way to overcome this problem ?
<script src="jquery.js"></script>
<script>
function get_content(){
$("#content").load("uploads/flashes/New folder/target.php") ;
}
</script>
<div id="content"></div>
回答1:
You can "encodeURIComponent" your url:
$("#content").load(encodeURIComponent("uploads/flashes/New folder/target.php"));
Javascript encodeURIComponent method is equivalent to URLEncode.
回答2:
You can use %20 to represent a space.
$("#content").load("uploads/flashes/New%20folder/target.php");
http://www.w3schools.com/TAGS/ref_urlencode.asp
EDIT:
If you don't want to do it manually, you could use encodeURI() instead. There are a number of common URI characters that it does not encode, which escape() will.
回答3:
From the above answers, encodeURI() has worked fine with me. On the other hand, encodeURIComponent() has changed also the representation for the '/' character, with the result of not doing properly the HTTP request to the desired URL. So, I recommend to use the encodeURI() solution in the case that the path String includes '/'.
来源:https://stackoverflow.com/questions/3741672/jquery-load-for-path-contain-spaces-need-help