我有这个HTML和jquery代码
<table width="100%" border="0">
<tr>
<td>Search: <input type="text" name="search" id="search" /> <input type="submit" id="SearchGo" value="Search" /> <input type="reset" name="reset" value="Clear" /></td>
</tr>
</table>
<div id="result"></div>
<script type="text/javascript">
$(function(){
$('input#SearchGo').on('click', function(){
var searchid = $('input.search').val();
var dataString = 'search='+ searchid;
if(searchid!='')
{
$.ajax({
type: "POST",
url: "tickets.php",
data: dataString,
cache: false,
success: function(html)
{
$("#result").html(html).show();
}
});
}return false;
});
jQuery("#result").live("click",function(e){
var $clicked = $(e.target);
var $name = $clicked.find('.name').html();
var decoded = $("<div/>").html($name).text();
$('#searchid').val(decoded);
});
jQuery(document).live("click", function(e) {
var $clicked = $(e.target);
if (! $clicked.hasClass("search")){
jQuery("#result").fadeOut();
}
});
$('#searchid').click(function(){
jQuery("#result").fadeIn();
});
});
</script>
我想有一个实时搜索功能,所以当我点击提交按钮,页面不会重新加载。
此代码位于我的tickets.php页面(与post页面相同)
:
if($_POST) {
//run search query
} else {
//run normal select query
}
但是没有结果显示
您的if
语句很可能失败。您可以检查字符串是否有字符(非空)
if ($.trim(searchid).length > 0)
change
<input type="submit" id="SearchGo" value="Search" />
<input type="button" id="SearchGo" value="Search" />
…:
var searchid = $('input.search').val();
:
var searchid = $('input#search').val();