js获取
  • 的元素问题
  • weihaixia_java 2008-09-05 09:31:19
    同行们,大家好!
    请你们帮我解决个问题,先言谢!谢谢!

    我要实现一个咨询的综合查询,界面如下(因添不上图片,我就大致写一下):

    逻辑 字段 操作 内容

    select select select text和
    [与,或,非] [咨询标题 [模糊 三个div 一个按钮(新增查询条件)
    咨询区域 精确 分别是时间控件,
    咨询日期 包含 下拉框[咨询区域的一些选项
    处理方式] 不包含] ,税收相关,投资相关]
    下拉框[自动,人工]


    ........................................................(js动态添加行) 删除按钮

    第一行是直接写在table里,在js的getContext()函数里用document.getElementById(“area1”)获取<option>的元素,然后进行判断,实现通过选择字段的不同,其操作和内容的显示也将不同,比如当字段选择咨询日期时,操作里的选项将是:等于,不等于,大于 小于,内容就不再是输入框而是个时间控件

    问题:
    用js自动添加的行,则不行,我能获取字段(select)的id值,第二行为are2 第三行为are3 ………
    用document.getElementById("area2")却取不到它们相应的<option>的value,所以没办法做判断。

    这个问题昨天困饶了我很久,至今没能解决,请大家帮帮我
    注:我也试着传递this,直接取this.value,但js里似乎不接纳this做为形参
    ...全文
    4508 9 打赏 收藏 转发到动态 举报
    写回复
    用AI写文章
    9 条回复
    切换为时间正序
    请发表友善的回复…
    发表回复
    langxiaodi 2008-10-22
    • 打赏
    • 举报
    回复
    我也是这个问题
    取值 当前值select.value即可(保证select某行是选中的)select.text 也应该行
    或者 select.options[i].value
    添加 var varItem = new Option(aa.value, aa.value);
    document.getElementById("Select2").options.add(varItem);

    修改就不会了
    zw61911169 2008-09-05
    • 打赏
    • 举报
    回复
    新增一行的select的id都不同吗????因为当只有一个select时,用document.getElementById 取的是他的option。。
    而有多个id一样的select的时候。。用document.getElementById就取的不是他的option了。。。而是他本身。。。
    richard_2010 2008-09-05
    • 打赏
    • 举报
    回复
    select控件有一个options数组属性,就是它的各个option。通过遍历options数组,判断哪个option的
    selected==true来找到当前选中的option,通过option.value来得到当前select的值
    这个应该能解决lz的问题,不过option.value好像不能得到select的值,而是别的属性,具体什么我也忘记了,不好意思,用的不多,上班去查下代码才知道...
    jiangfuyu 2008-09-05
    • 打赏
    • 举报
    回复
    技术群java jsp qun
    27324553 一(满)
    34894728 二(满)
    18175454 三(新建)
    装死误入 群
    weihaixia_java 2008-09-05
    • 打赏
    • 举报
    回复
    在线 恭候大家的回复
    落叶的葬礼 2008-09-05
    • 打赏
    • 举报
    回复
    顶一下。
    my145794 2008-09-05
    • 打赏
    • 举报
    回复
    [Quote=引用 5 楼 youjianbo_han_87 的回复:]
    1. var selectvar = docuemnt.all('下拉名字');
    var options = selectvar.options;
    var index = selectvar.selectedIndex;
    var selectvalue = options[index ];
    2. 通过options.remove(i),来删除select的一个option。
    通过options[i] = new Option("text","value");来添加一个option
    [/Quote]
    youjianbo_han_87 2008-09-05
    • 打赏
    • 举报
    回复
    1. var selectvar = docuemnt.all('下拉名字');
    var options = selectvar.options;
    var index = selectvar.selectedIndex;
    var selectvalue = options[index ];
    2. 通过options.remove(i),来删除select的一个option。
    通过options[i] = new Option("text","value");来添加一个option
    ever_li 2008-09-05
    • 打赏
    • 举报
    回复
    写的这么多,感觉你问的很乱。
    其实你就像知道以下几点:
    1,怎么取得页面上一个select控件的当前选择的值?
    select控件有一个options数组属性,就是它的各个option。通过遍历options数组,判断哪个option的
    selected==true来找到当前选中的option,通过option.value来得到当前select的值

    2,怎么动态改变一个select里面的选项。
    通过options.remove(i),来删除select的一个option。
    通过options[i] = new Option("text","value");来添加一个option


    罗嗦一句,提问题要总结好,自己想问的是什么,这个浮躁的社会,你写老长一段很多人都懒的看的。呵呵

    67,538

    社区成员

    发帖
    与我相关
    我的任务
    社区描述
    J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
    社区管理员
    • Java EE
    加入社区
    • 近7日
    • 近30日
    • 至今
    社区公告
    暂无公告

    试试用AI创作助手写篇文章吧