C# 类似易趣的类别选择菜单

C# 类似易趣的类别选择菜单,c#,jquery,asp.net,append,C#,Jquery,Asp.net,Append,我正在寻找一些示例代码(如果有的话)来处理下面的场景 我想做一些级联(过滤)选择框,就像ebay.com在添加新项目时使用的那样 我有困难是因为 可能存在许多父子关系。可以存在具有四个或更多子类别的类别 我不确定当有人单击父类别时,我是否应该通过jquery动态添加选择框,或者在页面上有许多隐藏的选择框,并根据需要隐藏/显示 我相信我可以找到这个,但我还不确定如何使用通过javascript在代码中动态添加的表单元素 有人知道易趣是怎么做的吗 数据如下: 硬币美国->美元->摩根->1894-1

我正在寻找一些示例代码(如果有的话)来处理下面的场景

我想做一些级联(过滤)选择框,就像ebay.com在添加新项目时使用的那样

我有困难是因为

  • 可能存在许多父子关系。可以存在具有四个或更多子类别的类别
  • 我不确定当有人单击父类别时,我是否应该通过jquery动态添加选择框,或者在页面上有许多隐藏的选择框,并根据需要隐藏/显示
  • 我相信我可以找到这个,但我还不确定如何使用通过javascript在代码中动态添加的表单元素 有人知道易趣是怎么做的吗

    数据如下:

    硬币美国->美元->摩根->1894-1898

    邮票->美国->封面->FDC->1931-1940

    数据将存储在具有以下结构的sql表中:

    Id | CategoryText | ParentId


    在树中选择的每个级别将导致在其右侧生成一个新的选择框,其中包含可用的子值

    我肯定以前有人问过这个问题,不过这是问题Jquery部分的代码

     var numbers = [1, 2, 3, 4, 5];
    
    for (i=0;i<numbers.length;i++){
       $('<option/>').val(numbers[i]).html(numbers[i]).appendTo('#items');
    }
    
    var数=[1,2,3,4,5];
    
    因为(i=0;i看起来我在发布我自己对第一个问题的答案

    这是我将要做的一个大致的大纲,我还没有把它编码好,但我花了一个晚上思考解决方案,相信它会奏效

  • 反规范化数据。而不是以

    Id | CategoryText | ParentId

    我会把东西储存起来

    Id | CategoryTextLevel1 | CategoryTextLevel2
    etc

    我做了一些研究,发现ebay的分类结构目前只下降了六个级别,我相信这对我也适用

  • 在页面加载时,调用服务获取第一级类别

  • 将事件处理程序附加到每个“选择框”项目,我还不确定如何执行此操作,但我认为我可能可以在选项上全局设置一个。单击()


  • 选择框项目将以
    的格式存储。听起来您需要一个向下展开菜单。这里有一个很好的:


    请参阅第二个和第三个示例。

    谢谢,我将更新原始问题以包含数据格式。此编辑框不起作用。如果您使用ASP.NET表单,是否考虑使用?这将允许您从服务器代码填充下拉列表,并且如果您的选项存储在数据库中,则特别有用mewhere。我确实考虑过,但我不想一开始就在页面上显示5个下拉列表。我认为应该有人能够进来,选择添加一些东西到硬币US->Dollars中,而不必看到Morgan或1897-98的选择框,如果有办法隐藏可能感兴趣的未使用的。我自己没有尝试过,但您可以更改“下一步”的
    可见性
    显示
    从客户端
    onchange
    事件中的下拉列表。只要您不执行任何回发,样式就不会丢失。但这可能会在将来变得混乱,因为您将通过JavaScript和WebMethod来操作下拉列表。嗯,相同的功能,但不同的UI。您认为这些菜单是否适用于最新的Jquery(1.7.1)?我看到他们在1.3版本中发布了它。今天早上,他们发现了一些有趣的库/示例,这些库/示例可以实现我所寻找的更多功能。在实现我自己的解决方案之前,我将尝试一些:最终使用了这个库()并进行了一些轻微的修改以实现我想要的功能。