功能需求:可以给一个单子设置多种状态,并且可以改变之前设置的。我表的主键是自增长的,单子的状态号,单子编号,操作人这三个字段唯一标识一条记录现在的做法:
用下拉列表框列出所有的状态,选择要设置的多个状态,比如我第一次给这个单子设置了,20,30,40三个状态,设置好之后插入到表里。ok!
当第二次再次设置的时候,我又增加了50,60,两个状态,现在这个下拉列表框里就有了五个状态,20,30,40,50,60,当我再次插入表的时候,我先把原来表里的数据全部delete,然后再插入这五个状态。
每次插入数据的时候都是先全部delete再插入数据,好像挺笨的方法。还有一种方法:
插入数据的时候判断第二次获取的状态列表中有的状态是否已经在原来的表里存在,如果存在就不插入,如果不存在才插入,虽然不用先delete了,但是每次插入数据的时候都要判断,觉得效率不高。
请问怎么做更合理?

解决方案 »

  1.   

    你设置的时候这么设置不是更好?
    <select multiple>
    <optgroup label="20"></optgroup>
    <optgroup label="30"></optgroup>
    <optgroup label="40"></optgroup>
    <option label="50">50</option>
    <option label="60">60</option>
    </select>
      

  2.   

    下面是<option value="50">50</option>
      

  3.   


    谢谢,你能说的详细一点吗?我有些不明白,你的意思好像是读取的时候有value的属性,读取,标签的不读取但我是用两个列表框,第一个列表框列出所有的状态,然后用一个按钮,用来把这个列表框选中的条目移动到目的列表框,目的列表框默认读取的是数据库表里已经有的状态,然后通过增加,删除按钮,随时改变目的列表框的值,如果用lable,那么当把目的列表框清空后,再增加的时候还要判断下,增加的option对应的value是不是在数据库表里已经有了,如果有了,就写个lable,如果没有,则写value,还是很麻烦,不知道我理解的对不对,不吝赐教!