2013-06-30 39 views
0

我有jquery功能的問題​​ 我想在php從輸入字段中的值,但如果你在字段中輸入一個空格什麼也沒得到jQuery的.load()返回什麼,如果字符串有空格

這裏是我的短代碼 HTML

<!DOCTYPE html> 
    <html> 
     <head> 
      <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
     </head> 
     <body> 
      <input type="text" onkeyup="$('#result').load('test.php?str='+$(this).val()).hide().fadeIn();" /> 
      <div id="result" ></div> 
     </body> 
    </html> 

和test.php的

<?php 
echo $_GET[str]; 
+1

第一點是審查線索,這點你要包括空格的行爲的文檔。 – alex

回答

4

如果在該字符串中有空格,則後一個塊爲返回的HTML的treated as a selector。如果選擇器不匹配任何內容,則不返回任何內容。

您需要使用encodeURIComponent()對參數進行編碼。這將確保它不會以字面空格結束,因爲它們將被編碼爲%20

1

您應該在$(this).val()上使用encodeURIComponent

1

寫你的JavaScript separatly通話

$('input[type=text]').keyup(function() { 
    $('#result').load('test.php?str=' + encodeURIComponent($.trim($(this).val()))).hide().fadeIn(); 
}); 
+0

這將有相同的錯誤。 – alex

+0

是的,我正在研究它,在第一次創建骷髏:) – Shaddow

+0

你不應該發佈一半的答案。 – alex

相關問題