我使用loadData()函数从我的php脚本中获取数据,并使用另一个函数从数据库中搜索。一切正常,但是当我点击搜索结果时,它没有加载数据。这是我正在使用的jquery函数,
//Gets Data
function loadData(id)
{
loading_show();
$.ajax({
url: "load_data.php",
type: "post",
data: "id="+id,
success: function(data){
loading_hide();
$("#container_wrap_metro").html(data);
},
error:function(){
alert("failure");
$("#container_wrap_metro").html('Unable to process request!');
}
});
}
//Search
$(function(){
$("#result").keyup(function(){
var q = $(this).val();
$.get("results.php?q="+q, function(data){
if(q){
$(".side_container").html(data);
}
else {
$(".side_container").html("");
}
});
});
$('#b').live('click',function(){
var page = $(this).attr('p');
loadData(page);
});
});
答案 0 :(得分:3)
.live()已弃用,因此您可以尝试使用.on()而不是.live()。
答案 1 :(得分:3)
答案是:
$(document).on('click','#b',function(){...}); //live equivalent
但更好的是使用最接近的静态容器:
$('#container_wrap_metro').on('click','#b',function(){...});
答案 2 :(得分:0)
您使用的是哪个jQuery版本? live函数可能已被弃用。直接使用.on()或.click()?
答案 3 :(得分:0)
使用On
(),因为live
()已被弃用。
$(document).on("click", "a.foo", fn); //here a.foo is target
答案 4 :(得分:0)
我已经取代了现场,但它对我不起作用。你可以使用.delegate()
在我的情况下,我在动态加载的内容中写了一个单击。当我更新JQuery库时,实时停止工作&今天用代表取而代之。
在此处查看更多信息:https://api.jquery.com/delegate/