VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 906|回复: 7

怎样获取所有select控件的所有值,高手进

[复制链接]

1

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-19 16:40:01 | 显示全部楼层 |阅读模式
如题:这是我写的代码,高手给看一下如何将js脚本赋给select控件的所有值,在后台得到,谢了。
<tr>
   <td align="right" valign="top"><font color=#FF6600>*</font><b> </b>工作地点</td>
   <td><select name="selloc1" size="5" multiple id="selloc1" runat=server style="width:160">
        <option value='#5#'>Beijing/北京</option
        </select>
   </td>
   <td><INPUT TYPE="BUTTON" NAME="Input3" VALUE="添加>>" OnClick="JavaScript:additem(selloc1,selloc2)">
              <BR> <INPUT TYPE="BUTTON" NAME="Input22" VALUE="<<删除" OnClick="JavaScript:delitem(selloc2)"></td>
   <td><select name="selloc2" size="5" MULTIPLE id="selloc2" style="width:160">               
       </select>
   </td>
</tr>

--------------------------javascrip已经实现没有问题-----------------------
<script language=javascript>
<!--begin
function additem(sel1,sel2){
  var flag;
  var count = 0;
  for(var x=0;x<sel1.length;x++){
    var opt = sel1.options[x];
if (opt.selected){
  count = count+1;
      if (count>5) {
  alert("所选项目不能超过5个!" );
return;
  }
    }
  }
  if (count>1 && sel1.options[0].value==0 && sel1.options[0].selected) {
  alert("您已经选择了[不限]项,不能再选其他项!");
return;
  }

  for(var x=0;x<sel1.length;x++){
    var opt = sel1.options[x];
    if (opt.selected){
  flag = true;
  for (var y=0;y<sel2.length;y++){
        var myopt = sel2.options[y];
        if (myopt.value == opt.value){  
          flag = false;
        }
else if (sel2.options[0].value==0){
alert("您已经选择了[不限]项,不能再选其他项!");
return;
}
      }
      if(flag){
if (sel1.options[0].selected && sel1.options[0].value==0){
for(var x=sel2.length-1;x>=0;x--){
     sel2.options[x] = null;
    }
sel2.options[0]= new Option(opt.text, opt.value, 0, 0);
}else if(sel2.length>4) {
  alert("所选项目不能超过5个!");
return;
    }

else{
sel2.options[sel2.options.length] = new Option(opt.text, opt.value, 0, 0);
}
      }
  
    }
  }
回复

使用道具 举报

1

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-26 18:45:01 | 显示全部楼层
请详细点说明,最好有一点示例。
回复

使用道具 举报

0

主题

8

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-1-27 09:09:01 | 显示全部楼层
写到一个hidden控件里。
回复

使用道具 举报

0

主题

58

帖子

32.00

积分

新手上路

Rank: 1

积分
32.00
发表于 2020-1-27 12:00:02 | 显示全部楼层
添加一个控件:
<input type="hidden" id="selectvalues" runat="server" />

用脚本将select的值全部保存到上面的控件中

document.getElementById("selectvalues").value = document.getElementById("selloc2).options.join(",") /*option.value 还是text,你再取看看*/

在后台:
string[] options = this.selectvalues.value.Split(",")
foreach(string option ...)
回复

使用道具 举报

0

主题

17

帖子

14.00

积分

新手上路

Rank: 1

积分
14.00
发表于 2020-1-27 14:18:02 | 显示全部楼层
由於select控件的特性使然,當你提交刷新頁面時,select的值會丟失。
可以通過一個TextBox控件,把select控件裡的值賦給TextBox,這樣在後台讀取TextBox的值即可。
回复

使用道具 举报

0

主题

73

帖子

27.00

积分

新手上路

Rank: 1

积分
27.00
发表于 2020-1-27 20:27:02 | 显示全部楼层
提交之前选中selloc2的全部值,再到后台用Request.Form["selloc2"]得到全部值
下面是选中selloc2全部值的JS:
for(i=0;i<document.all.selloc2.length;i++)document.all.selloc2[i].selected=true;
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-27 08:30:01 | 显示全部楼层
3楼正解
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-27 08:45:01 | 显示全部楼层
顶,3楼正解
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表