2013-09-14 2 views
1

У меня есть URL-адрес, который я передаю jQuery AJAX.изменение href attr при запуске с jquery ajax

<a href="/wishlist.php?sku=C5&amp;action=move&amp;qty=1" class="buttoncart black">Move To Wishlist</a>; 

Когда он попадает в AJAX Я хочу изменить HREF атрибута

<a href="/ajax_page.php?sku=C5&amp;action=move&amp;qty=1">Move blaf</a> 

Я еще новичок. Я уверен, что должен быть простой способ. Вот мой сценарий.

var wishorder = { 
    init: function(config){ 
     this.config = config; 
     this.bindEvents(); 
    }, 
    bindEvents: function(){ 
     this.config.itemSelection.on('click',this.addWish); 
    }, 
    addWish: function(e){ 
     console.log('working'); 
     console.log($(this).attr('href').pathname); 
     var self = wishorder; 

     $.ajax({ 
      //this is where im using the href and would like to change it 
      //but i cant seem to access to get variables 
      url: $(this).attr('href'), 
      //url: '/ajax/ajax_move.php', 
      type: 'GET', 
      data: { 
       sku: $(this).data('sku'), 
       action: $(this).data('action'), 
       qty: $(this).data('qty') 
      }, 
      success: function(results){ 
       console.log(results); 
       $('#cartcont').html(results); 
      } 
     }); 
     e.preventDefault(); 
    } 
}; 
wishorder.init({ 
    itemSelection: $('#carttable tr a'), 
    form: $('#cartfrm') 
}); 

ответ

1

Вам просто нужна замена шнура.

var original_href = $('<a href="/wishlist.php?sku=C5&amp;action=move&amp;qty=1" class="buttoncart black">').attr('href'); 

var new_href = original_href.replace(/wishlist.php/, "ajax_page.php"); 
+0

им получить ошибку здесь – Brett

+0

вы можете разместить здесь ошибку? – sudhAnsu63

+0

Это означало изменение усилителя; к &? Я получаю new_href как это **/ajax_page.php? Sku = C5 & action = move & qty = 1 ** – sudhAnsu63

2

Вы можете использовать replace в вашей addWish логики изменить URL:

addWish: function(e){ 
    var self = wishorder; 
    var url = $(this).attr('href').replace('wishlist.php', 'ajax_page.php'); 

    $.ajax({ 
     url: url , 
     type: 'GET', 
     data: { 
      sku: $(this).data('sku'), 
      action: $(this).data('action'), 
      qty: $(this).data('qty') 
     }, 
     success: function(results){ 
      console.log(results); 
      $('#cartcont').html(results); 
     } 
    }); 
    e.preventDefault(); 
} 
+0

+1 Вы были правы – Itay

Смежные вопросы