首页 > 解决方案 > 如何使用ajax动态更改编辑路径的href

问题描述

我有一个预订显示页面,该页面带有一个下一步按钮,该按钮使用 ajax 单击所有用户的预订并替换每个实例的属性。但是,我需要一种方法来动态更改每个 Bookings 显示页面的每个编辑和取消路径。

<p class="userName" data-id="<%=@user.id%>"><%= "#{@user.name}'s 
Scheduled booking" %></p>
<a href="#" class="js-next" data-userid="<%=@user.id%>"data-id="<%= 
@booking.id %>">Next...</a>
<p class="lessonName"><%= @booking.lesson.name %></p>
<ul>
<li data-id="<%=@booking.id%>" id="bookingNote"><%= link_to "Manage 
notes", edit_user_booking_path(@user, @booking) %></li>
<li data-id="<%=@booking.id%>" id="cancelBooking"><%= link_to "Cancel 
Reservation", delete_booking_path(@booking) %></li>
</ul>

<script type="text/javascript" charset="utf-8">
$(function () {
$(".js-next").on("click", function() {
var userID = parseInt($(".js-next").attr("data-userid"));
var nextID = parseInt($(".js-next").attr("data-id")) + 1;
$.get("/users/" + userID + "/bookings/" + nextID + ".json", 
function(data) {
  $(".lessonName").text(data["lesson"]["name"]);
  $(".js-next").attr("data-id", data["id"]);
  });
 });
});
</script>

我需要在每个预订编辑中使用 href 属性,并取消当前显示路径的路线。

标签: javascriptjqueryruby-on-railsajax

解决方案


您可以使用.prop()(通过 ajax 调用获取新网址后)

$("#bookingNote a").prop("href", "Your New bookingNote link URL");
$("#cancelBooking a").prop("href", "Your New cancelBooking link URL");

推荐阅读