我有一个页面,其中新创建的选项使用一些 ajax 代码附加到列表中,因此用户不必刷新整个页面。该列表包含 2 列,其中右侧的列必须有一个名为“结束”的 css 类,以确保它向右浮动并且右侧的填充也为零。
问题是,当添加一个新的选项时,如果循环功能应该工作,则呈现的部分将期望多个选项。
请在下面查看我的代码,如果您对如何更改代码有任何建议,请告诉我,以便部分插入正确的 css 类。
部分的:
<% @tickets.each do |choice| %>
<div id="<%= choice.id %>" class="<%= cycle("ticket shadow", "ticket shadow ending") %>" data-time="<%= choice.created_at.to_i %>">
<% end %>
视图中的 AJAX
<script type="text/javascript">
var pusher = new Pusher('<%= Pusher.key %>'); // Replace with your app key
var channel = pusher.subscribe('choices');
channel.bind('created', function(data) {
var after = $('.ticket:last').attr('data-time');
var settings = { after: after}
$.ajax({
url: '/Home/Index',
type: 'POST',
dataType: 'json',
data: settings,
success: function (data) {
$("#tickets").append(data.html);
}
});
}
);
</script>
编辑:
我尝试了下面的方法,这似乎可行,但也似乎有点 hacky.. 有更流畅的解决方案的人吗?
if (css_end == "ticket shadow") {
$(".ticket:last").addClass("ending");
}