2012-02-21 57 views
2

我已经5天试图使jQuery的拖放与asp.net c#的功能。jQuery的拖放与asp.net c#的功能

我有两个asp列表视图一个包含朋友列表,第二个是组容器。我想要做的就是当用户从列表视图中拖动行项目并在组列表视图上删除时,我想在sql server数据表中写入此项。

我已经使jquery拖放其工作良好,然后使asp Web服务即时通讯调用它与JavaScript并发送拖动用户的名字。

我的web服务是静态方法,当然不能访问组列表视图来更新它。 然后我试图调用我的非静态方法,它从数据表中获取数据,并绑定我的组的点亮视图。

林调用该函数像这样

GamerProfile gp = new GamerProfile(); 
GetClanData(); 

GamerProfile是我的网页形式

public partial class GamerProfile : System.Web.UI.Page 

GetClanData抛出错误Object reference not set to an instance of an object.在这条线dlClan.DataSource = _ClandCollection;我知道它的发生,因为我创造了新的类,然后叫GetClanData();

是否可以在不创建新的情况下调用GetClanData?

有什么出路吗?

我可以添加行到我的列表视图从JavaScript? 或者提出一些要求调用GetClanData(非静态)方法的请求?

如果即时通讯尝试使这种困难的方式请咨询更容易的解决方案。

谢谢。对不起我的英文不好

,这是我的整个js文件

function SendUserToC(user) { 

    var result = PageMethods.AddUserToClan(user, OnSucceeded, OnFailed); 

} 

function OnSucceeded(result, userContext, methodName) { 
    if (result.indexOf("Warning") != -1) { 
     alert(result); 
    } 
} 


function OnFailed(error, userContext, methodName) { 

} 

$(document).ready(function() { 

    var UserCount = 0; 
    var UsersList = []; 

    $(".dragable").draggable({ 
     helper: 'clone', 
     revert: true, 
     start: function() { 
     } 
    }); 

    $("#clan_drop").droppable({ 
     accept: ".dragable", 

     drop: function (ev, ui) { 

      UserCount++; 

      if (UserCount > 10) { 
       alert("You cannot add more users. Maximum quantity of gamers in one clan is 10"); 
      } else { 

       $("#drag_here_container").css("display", "none"); 
       var droppedItem = $(ui.draggable).clone(); 
       $(this).append(droppedItem); 
       var user = $.trim($(this).find('.friend_user_name').text()); 


       $('.dragable:last').remove(); 

       SendUserToC(user); 
      } 
     } 

    }); 
}); 
+1

这么多问题:哦! – 2012-02-21 17:03:47

+0

只是一个随机链接http://www.codeproject.com/Articles/24123/Drag-and-Drop-with-Persistence-using-JQuery – 2012-02-21 17:12:49

回答

2

而且你确信_ClandCollection不为空。对 ?如果是,请查看在dlClan对象的DataSource属性的setter上启动的代码。