iteye_16383 2011-05-09 11:31
浏览 688
已采纳

如何设计动态表单

公司前辈要我为动态设计一个动态表单,他稍微和我说了一下,但我不是很了解他的意思
不知道哪位仁兄做过这方面的研究,帮我解决下问题。

比如说我 有个界面要出售电脑:电脑有不同的档次。

我要在界面实现能够动态的为我的电脑档次增加 属性。如我单机”添加属性“按钮,就能显示一个对话框出来让我输入 属性的名称,字符类型,控件类型(如:是下拉列表还是 单选框等。还要考虑到下拉列表关联到的是数据库中其他表的属性(如 usb型号))
高档电脑能够添加一个USB视频设备 的属性等,或则提供修改等。

他说大概要这几个表 如 :
模板表:存放不档次电脑的共同属性。如档次1:CPU MAINBOARD RAM 档次2 CPU MAINBOARD RAM USB视频设备 硬盘
属性表:存放不同字段的信息,如 CPU 属性的类型 长度 控件类型(表单类型) label:界面显示名称

值表:存放具体的cpu 型号 主板型号 价格 等信息。

通过这些表如果做到动态修改表单呢,这些表要如何关联 设计呢,中间有没有缺少其他的表,请高手帮我解惑啊 !!!

  • 写回答

9条回答 默认 最新

  • fmjsjx 2011-05-10 09:57
    关注

    [quote]一句话:为档次1的电脑 添加一个属性 :硬盘
    通过上面三张表 如何实现
    [/quote]

    在js里(jquery神马的也是js……)的数据结构原则上差不多是这样的:
    levels = ['档次1','档次2','档次3'];
    properties = [];
    properties['档次1'] = ['硬盘','显卡','CPU','内存条',...];
    properties['档次2'] = [...]
    ...
    values = [];
    values['硬盘'] = ['250G','320G','500G','1T',...];
    values['显卡'] = [...];
    ...
    这样不就能够级联了么……

    至于数据库表差不多一样,就是属性表有个外键指向档次表,而值表有个外键指向属性表。如果不同档次还有不同值的话,那值表还可以加个外键指向档次表,就是有两个外键,相似js可以是这样的:
    values['硬盘']['档次1'] = ['250G','320G','500G','1T',...];

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(8条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!