2009-02-01 49 views
2

我想通过一个href ID加载()在JQuery中,我可以从警报中看到返回的ID#960,所以我知道ID值越过我只是不知道如何追加加载url,以及$(“#refreshme _”+ add_id)是最重要的部分,我使用它来刷新数据库所分配页面中的唯一div id,所以它会查找为id =“refreshme_960”。我的简单例子显然不起作用。我想刷新页面的数据库选择部分,显示新的汽车列表。有任何想法吗?JQuery传递变量从href到加载()

$(document).ready(function() 
{ 
    $(".add_to_favorites").livequery("click", function(event) 
    { 
     var add_id = this.id.replace("add_", ""); //taken from a.href tag 
     alert (id); 
     $.get(this.href, function(data) 
     { 
      $("#refreshme_"+add_id).load("http://www.example.com/car_list/"+add_id); 

<a class="add_to_cars" href="/car-add/960/add'}" id="add_960">Add Car</a> 
+0

希望您不要介意,但我尝试在其中添加一些indendation以提高可读性。我无法正面或反面... – 2009-02-01 04:18:36

+0

问题究竟是什么?是否你的整个列表正在加载选定的汽车股利?或者根本不装载? – strager 2009-02-01 05:14:57

回答

0

这是一个有点混乱,你有 'add_to_favorites' 作为您的触发器,然后在html元素add_to_cars。

太让你更换ID的所有jqueryish,我想你会用

 
$(this).attr('id', 'add_'); 

我认为你正在试图做的是,当用户点击“add_to_cars”链接,它补充说,从ajax响应到收藏夹中?虽然我可能是错的。

我会质疑为什么使用add_960作为你的id而不是960(我知道你不应该使用数字作为id,我一直都在使用它,而且还没有问题)。

所以,你可以做

 
$('.add_to_cars')livequery('click', function(event){ 
    var request=$(this).attr('id'); 
    $.ajax({ 
      type: GET, 
      url: "http://www.example.com/car_list/"+request, 
      success: function(response){ 
       $('.add_to_favorites').append(response) 


     } 
}); 
}); 

或类似的东西。再次,不完全确定你想要做什么。

1

你在这个行业

$('#favorite-listings').append(response); 

这就是为什么你会得到旧后新添加的使用结果的append()。将该行更改为

$('#favorite-listings').html(response);