jQuery 新版本不兼容的脚本
jQuery new version incompatible script
我是初学者。以下脚本适用于旧版本的 jQuery,但与 jquery-3.3.1 不兼容。请帮帮我..
<script type="text/javascript">
$(document).ready(function() {
$('#results-text').fadeOut();
function search() {
var query_value = $('input#search').val();
$('b#search-string').html(query_value);
if(query_value !== ''){
$.ajax({
type: "POST",
url: "search.php",
data: { query: query_value },
cache: false,
success: function(html){
$("table#results").html(html);
}
});
}return false;
}
$("input#search").live("keyup", function(e) {
clearTimeout($.data(this, 'timer'));
var search_string = $(this).val();
if (search_string == '') {
$('#results-text').fadeOut();
}else{
$('#results-text').fadeIn();
$(this).data('timer', setTimeout(search, 100));
};
});
});
</script>
看看这个
<script type="text/javascript">
$(document).ready(function() {
$('#results-text').fadeOut();
});
function search() {
var query_value = $('input#search').val();
$('b#search-string').html(query_value);
if(query_value !== ''){
$.ajax({
type: "POST",
url: "search.php",
data: { query: query_value },
cache: false,
success: function(html){
$("table#results").html(html);
}
});
}return false;
}
$("input#search").on("keyup", function(e) {
clearTimeout($.data(this, 'timer'));
var search_string = $(this).val();
if (search_string == '') {
$('#results-text').fadeOut();
}else{
$('#results-text').fadeIn();
$(this).data('timer', setTimeout(search, 100));
};
});
</script>
jQuery .live() 已从 1.9 版本开始移除。
Use on instead of live
例子:-
<script type="text/javascript">
$(document).ready(function() {
$('#results-text').fadeOut();
function search() {
var query_value = $('input#search').val();
$('b#search-string').html(query_value);
if(query_value !== ''){
$.ajax({
type: "POST",
url: "search.php",
data: { query: query_value },
cache: false,
success: function(html){
$("table#results").html(html);
}
});
}return false;
}
$("input#search").on("keyup", function(e) { //changed on instead of live
clearTimeout($.data(this, 'timer'));
var search_string = $(this).val();
if (search_string == '') {
$('#results-text').fadeOut();
}else{
$('#results-text').fadeIn();
$(this).data('timer', setTimeout(search, 100));
};
});
});
</script>
如果 'search function' 没有被调用是你的问题,那么将函数保持在全局范围内,即在 $(document).ready 块之外。
我是初学者。以下脚本适用于旧版本的 jQuery,但与 jquery-3.3.1 不兼容。请帮帮我..
<script type="text/javascript">
$(document).ready(function() {
$('#results-text').fadeOut();
function search() {
var query_value = $('input#search').val();
$('b#search-string').html(query_value);
if(query_value !== ''){
$.ajax({
type: "POST",
url: "search.php",
data: { query: query_value },
cache: false,
success: function(html){
$("table#results").html(html);
}
});
}return false;
}
$("input#search").live("keyup", function(e) {
clearTimeout($.data(this, 'timer'));
var search_string = $(this).val();
if (search_string == '') {
$('#results-text').fadeOut();
}else{
$('#results-text').fadeIn();
$(this).data('timer', setTimeout(search, 100));
};
});
});
</script>
看看这个
<script type="text/javascript">
$(document).ready(function() {
$('#results-text').fadeOut();
});
function search() {
var query_value = $('input#search').val();
$('b#search-string').html(query_value);
if(query_value !== ''){
$.ajax({
type: "POST",
url: "search.php",
data: { query: query_value },
cache: false,
success: function(html){
$("table#results").html(html);
}
});
}return false;
}
$("input#search").on("keyup", function(e) {
clearTimeout($.data(this, 'timer'));
var search_string = $(this).val();
if (search_string == '') {
$('#results-text').fadeOut();
}else{
$('#results-text').fadeIn();
$(this).data('timer', setTimeout(search, 100));
};
});
</script>
jQuery .live() 已从 1.9 版本开始移除。
Use on instead of live
例子:-
<script type="text/javascript">
$(document).ready(function() {
$('#results-text').fadeOut();
function search() {
var query_value = $('input#search').val();
$('b#search-string').html(query_value);
if(query_value !== ''){
$.ajax({
type: "POST",
url: "search.php",
data: { query: query_value },
cache: false,
success: function(html){
$("table#results").html(html);
}
});
}return false;
}
$("input#search").on("keyup", function(e) { //changed on instead of live
clearTimeout($.data(this, 'timer'));
var search_string = $(this).val();
if (search_string == '') {
$('#results-text').fadeOut();
}else{
$('#results-text').fadeIn();
$(this).data('timer', setTimeout(search, 100));
};
});
});
</script>
如果 'search function' 没有被调用是你的问题,那么将函数保持在全局范围内,即在 $(document).ready 块之外。