【发布时间】:2010-07-27 17:43:32
【问题描述】:
我正在尝试通过 jquery on keydown 将搜索文本框的值发送到 php 页面,以便它可以显示包含搜索关键字的结果。但是,php 页面没有读取输入文本框的 $_POST [不是按钮]。
html:
.keydown(function() {
//create post data
var postData = {
"bsearch" : $(this).val()
};
//make the call
$.ajax({
type: "POST",
url: "quotes_in.php",
data: postData, //send it along with your call
success: function(response){
$("#bquote").html(response);
}
});
})
. . .
<!-- Begin Search -->
<div id="search" style="display:none;">
<input type="text" class="bsearch" name="search" value="Search" />
</div>
<!-- End Search -->
php:
include_once "inc/class.quotes.inc.php";
$quotes = new Quotes($db);
if (isset($_POST['search']))
//$quotes->searchQuotes();
echo 'Searching. . ';
else
$quotes->displayQuotes();
它似乎没有读取$_POST['search'],因为它没有回显文本'Searching. .',而是转到else部分并显示引号。
我尝试了这段代码来了解发生了什么:
echo "<pre>";
print_r($_POST);
echo "</pre>";
这将显示一个空数组。我做错了什么?
【问题讨论】:
-
Firebug 是否显示您的 POST 请求?
-
您的 ajax 调用填充的是 'bsearch' 而不是 'search'
标签: php html search parameters oop