当我将项目拖到列表时,除了提交之外,执行以下jQuery。
jQuery的:
...
$( "#group ul" ).droppable({
activeClass: "ui-state-default",
hoverClass: "ui-state-hover",
accept: ":not(.ui-sortable-helper)",
drop: function( event, ui ) {
// ****** THIS WORKS
$( "<li></li>" ).text( ui.draggable.text() ).appendTo( this );
// ****** THIS IS NOT EXECUTING
$(this).parents('form: first').submit();
return false;
}
...
每个小组都有一个表格。第一个表单id是0,第二个表单id是1,依此类推(源视图):
<div id="team">
<form accept-charset="UTF-8" action="/items/create_from_drop" data-remote="true" html="{:id=>0}" method="post">
...
<input id="group_id" name="group_id" type="hidden" value="3" />
<ul>
... item list
</ul>
</form>
<form accept-charset="UTF-8" action="/items/create_from_drop" data-remote="true" html="{:id=>1}" method="post">
...
<input id="group_id" name="group_id" type="hidden" value="5" />
<ul>
... item list
</ul>
</form>
</div>
有两个问题:
感谢您的帮助。
答案 0 :(得分:2)
尝试使用最近的()代替父母,这应该只给你一个元素。除此之外,检查表单上是否有任何onSubmit事件,如果这个处理程序没有问题。
刚刚意识到了......
at $(“#group ul”)。droppable ...
哪里是id组的元素?