2010-03-14 86 views
1

我正在使用以下代码发布到服务器,然后发送到MYSQL查询通过搜索找到匹配。JQUERY AJAX,空间发送到服务器的问题,为什么?

$.ajax({ 
url: '/search/spotlight/', 
data: "q=" + $(this).val(), 
success: function(data) { 
} 
}); 

当Q's val中有空格时,会产生问题。我想知道我是否正确处理了这个问题?我需要在AJAX调用中对值进行编码吗?或者,这是我的后端的一个问题,这是ColdFusion的

眼下jQuery是张贴下列服务器: /搜索/聚光灯/ Q =姓%20LastName

这是正确的?

回答

4

在客户端看起来没问题。只需在ColdFusion的字符串上使用URLDecode即可将%20转换为空格(以及其他特殊字符)。

5

/search/spotlight/?q=FirstName%20LastName是一个有效的url字符串。我的猜测是你的服务器端脚本需要更好地处理事情。

BTW你不需要建立自己的查询字符串的jQuery能为你做到这一点:

$.ajax({ 
url: '/search/spotlight/', 
data: {"q": $(this).val()}, 
success: function(data) { 
} 
}); 
1

这是正确的...%20是指空间

但你应该设置数据像这样

data: {'q': $(this).val()} 
相关问题