将div的内容保存在不同位置

发布于 2024-11-02 18:34:38 字数 143 浏览 0 评论 0原文

我左边有一些名称(div),右边有 3 个方块,它们是 div(nr1、nr2、nr3)。 我可以将三个名字拖到右侧的方块上并制作前 3 个。所有这些都是使用 jquery 完成的。

我如何使用asp.net将拖动到方块上的位置和名称保存在sql数据库中。

I have on the left some names(divs) and on the right 3 squares which are divs (nr1, nr2, nr3).
I can drag the three names on the right squares and make a top 3. All this is done with jquery.

How can i save in an sql database with asp.net the positions and names which were dragged on the squares.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

不醒的梦 2024-11-09 18:34:38

我认为当您单击“保存”按钮时,会将子 div 放入容器 div 中。然后像父子关系一样保存它。获取 chid div 的位置(左侧和顶部)(相对于父级的位置)并保存,

表记录可能看起来像

ChildId ParentId ChildLeftPosition ChildTopPosition

-------- -------- -------------- --- ------------------

nr1        Parent1        25                 12
nr2        Parent1        65                 48
nr3        Parent1        210                97

当你渲染回来时,读取这些值并定位它

I think when you click the save button get the child divs inside the container div. Then save it like a parent-child relationship.Get the position (left and top) of the chid div (relative position to parent) and save that too

the table records may look like

ChildId ParentId ChildLeftPosition ChildTopPosition

-------- -------- ----------------- ------------------

nr1        Parent1        25                 12
nr2        Parent1        65                 48
nr3        Parent1        210                97

and when u render back, read these values and position it

放低过去 2024-11-09 18:34:38
function SaveNames()
{
    var NameForN1 = [];
    var NameForN2 = [];
    var NameForN3 = [];

    $('#nr1').children().each(function()
    {
         NameForN1.push($(this).html());
    });
    //TODO: Do the same for nr2 and nr3
    $.post('yoururl',{Names:[NameForN1,NameForN2,NameForN3]},callback);
}

这是针对客户端的,现在是针对服务器端的

protected void SaveItems()
{
    Dictionnary<string,object> myNames;
    System.Web.Script.Serialization.JavaScriptSerializer jvs = new System.Web.Script.Serialization.JavaScriptSerializer();
    myNames = jvs.Deserialize<Dictionnary<string,object>>(Request["Names"]);
    //TODO Now you only have to save it to the database.
}

myNames["Names"] 应该是(如果我是对的)字符串数组的数组。
如果您使用的是 asp.net 4.0,这在服务器端不起作用,我建议您阅读这篇关于 Json 反序列化的一些很酷工具的文章:Hanselman 博客的

function SaveNames()
{
    var NameForN1 = [];
    var NameForN2 = [];
    var NameForN3 = [];

    $('#nr1').children().each(function()
    {
         NameForN1.push($(this).html());
    });
    //TODO: Do the same for nr2 and nr3
    $.post('yoururl',{Names:[NameForN1,NameForN2,NameForN3]},callback);
}

That's for the client Side, for the server side now

protected void SaveItems()
{
    Dictionnary<string,object> myNames;
    System.Web.Script.Serialization.JavaScriptSerializer jvs = new System.Web.Script.Serialization.JavaScriptSerializer();
    myNames = jvs.Deserialize<Dictionnary<string,object>>(Request["Names"]);
    //TODO Now you only have to save it to the database.
}

The myNames["Names"] should be (if I'm right) an array of array of strings.
If that does'nt work on the server side if you're using asp.net 4.0 I suggest you read this article about some cool tools for Json deserialization : Hanselman blog's

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文