Php 空格键进入时ajax停止

Php 空格键进入时ajax停止,php,jquery,ajax,Php,Jquery,Ajax,我有一个奇怪的情况。 我的页面如下: <html> <script> $(document).ready(function(){ $("input").keyup(function(){ $("#mydiv").load("showlist.php?q="+this.value); }); </script> <input><br> <div id="mydiv">ajax content appear in here<

我有一个奇怪的情况。 我的页面如下:

<html>
<script>
$(document).ready(function(){
$("input").keyup(function(){
$("#mydiv").load("showlist.php?q="+this.value);
});
</script>
<input><br>
<div id="mydiv">ajax content appear in here</div>
</html>
当我在文本框中输入,即:abcde时,页面运行良好{这意味着mydiv标记中的内容被showlist.php的输出所替换}。 但是,当我键入abcd efgh{这意味着它在字符串中有一个空格}时,div中没有显示任何内容。它只是空白! 我做错了什么?

需要将“”(空格)URL编码为%20(一个“+”也可以)

使用以下代码对URI进行编码:

var newUri = 'showlist.php?' + encodeURI("q="+this.value);
$("#mydiv").load(newUri);

在使用
encodeURIComponent()
将字符串传递到服务器之前,应该对其进行编码:

$(“#mydiv”).load(“showlist.php?q=“+encodeURIComponent(this.value))

编辑:关于
encodeURIComponent()
vs
encodeURI()

var newUri = 'showlist.php?' + encodeURI("q="+this.value);
$("#mydiv").load(newUri);