Привет У меня в настоящее время есть приложение Rails, которое использует библиотеку jQuery для выполнения запросов ajax.Однако я столкнулся с небольшой проблемой, так как отправляемый ajax-запрос выдает ошибку:
a(this).data("draggable") is undefined
Программа rails должна взять перетаскиваемый объект и поместить его в допустимый контейнер.а затем обновите свойства перетаскиваемого объекта, чтобы отразить новые разрешения, предоставляемые перетаскиванием.Так что это в основном способ организации разрешений, но с помощью перетаскивания.Это код Rails
<%= drop_receiving_element drop_id,
:onDrop => "function(ev,ui){
if (confirm(\"#{escape_javascript(_('This will add User to this Group, are you sure?'))}\"))
{#{remote_function(:update => 'module_content',
:url => {:controller => :projects,
:action => :member_change,
:id => @project.id},
:with => "'u=' + encodeURIComponent($(ui.draggable).attr('id')) + '&r=' + encodeURIComponent($(this).attr('id'))"
)};}
}",
:accept => '.RolesUsersSelection',
:update => 'roles_edit',
:url => {:controller => :projects, :action => :role_user_update},
:hoverclass => "#{drop_class}_active"
%>
И это JavaScript, созданный jrails и jquery:
<script type="text/javascript">
//<![CDATA[
jQuery('#RemoveThisMember').droppable({accept:'.RolesUsersSelection', drop:function(ev,ui){
if (confirm("This will remove User from this Group, are you sure?"))
{jQuery.ajax({data:'u=' + encodeURIComponent($(ui.draggable).attr('id')), success:function(request){jQuery('#module_content').html(request);}, type:'post', url:'/of/projects/11/member_delete'});}
}, hoverClass:'ProjectRoleDropDelete_active'})
//]]>
</script>
Я предполагаю, что это как-то связано с ($(this).attr('id'))
, но я не уверенчто еще там должно быть ... Спасибо,