2010-03-14 101 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()} 
相關問題