Ajax:Ajax响应中的链接不起作用
Ajax: link in ajax response is not working
我已经尝试了所有可能的解决方案,但仍然不适合我。
我使用ajax调用一个php页面,比如livesearch.php,从索引页面获取实时搜索结果。
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$("#livesearch").on("click", "a.alert", function() {
alert("here");
});
</script>
<script>
function showResult(str) {
if (str.length == 0) {
$("#livesearch").empty();
$("#livesearch").css('display', 'none');
return;
}
$.ajax({
type: "GET",
url: "livesearch.php?q=" + str,
success: function(responseText) {
$("#livesearch").html(responseText);
$("#livesearch").css('display', 'block');
$("#livesearch").css('background', '#fff');
}
});
}
</script>
</head>
<body>
<form>
<input type="text" size="30" onkeyup="showResult(this.value)" onblur="showResult('')" placeholder="search here">
<div id="livesearch" style="height:500px;width:900px;overflow-y:scroll;display:none;z-index:99999;"></div>
</form>
<div id="gentext" style="position:fixed;top:40px;z-index:-1;">This is just a dummy text to check if result div overshadow this line or not.</div>
</body>
</html>
它工作良好,并列出了可能的搜索。现在,从搜索结果中,用户可以点击页面进行浏览,这很简单。只要点击链接,我就想抓住它并进行一些处理。参见以上代码中的以下部分:
$("#livesearch").on("click", "a.alert", function() {
alert("here");
});
首先,我正在测试,如果我能够捕获ajax搜索返回的这个链接上的点击,那么请注意("此处"),但它不起作用。
请关闭
在添加链接后定义点击方法:
success: function(responseText)
{
$("#livesearch").html(responseText);
$("#livesearch").css('display', 'block');
$("#livesearch").css('background', '#fff');
$("#livesearch").on("click", "a.alert", function()
{
alert("here");
});
}
试试这个,让我们知道控制台返回了什么:
$.ajax({
type: "GET",
url: "livesearch.php?q=" + str,
success: function(responseText) {
console.log(responseText); //CHECK YOUR CONSOLE
$("#livesearch").append(responseText);
$("#livesearch").css('display', 'block');
$("#livesearch").css('background', '#fff');
$("#livesearch").find(".alert").click(function(e) {
e.preventDefault();
alert("here");
});
}
});
实现这一点的另一种方法是构建像<a href="" onclick="return myFunction()"></a>
这样的锚标记,然后创建JS函数:
myFunction(){
alert("here")
return false;
}
相关文章:
- 通过mvc中的ajax动作链接获取关于成功的响应头
- ajax中的文本链接不带Jquery
- 使用jquery延迟对象链接多个ajax调用
- Ajax:Ajax响应中的链接不起作用
- 导轨 4.宝石will_paginate.更改在 ajax 请求上设置的分页链接
- MVC3 Ajax链接确认对话框使用jquery ui对话框
- 可以't使Ajax链接可以右键单击
- 重新绑定分配给ajax链接的操作
- 使用AJAX将AJAX链接添加到页面Yii
- ajax链接保留了上次点击的链接
- Ajax 链接在 ajax 加载的内容中
- 在ajax链接的选择框中添加一个日期选择器
- jquery你确定吗?插件:如果我点击ajax链接,确认对话框不会显示
- Ajax链接,也可以在新选项卡中打开?(如Facebook)
- 在AJAX链接MVC上单击中键
- 跟随ajax链接与Javascript
- ajax链接的下拉菜单
- Jquery帮助创建ajax链接呈现
- 如何在使用Rails UJS“;remote:true”;ajax链接
- 如何在ajax链接函数中传递js变量