动态生成的下拉框option选项的问题

nancun 2008-11-26 10:48:51
jsp提交到本页时,如何保存select的选择?
<option value="1" <%="1".equals(request.getParameter("s1"))?"selected":"" %>>a</option>
<option value="2" <%="2".equals(request.getParameter("s1"))?"selected":"" %>>b</option>
类似上面写死的option可以通过<%="2".equals(request.getParameter("s1"))?"selected":"" %>来判断。
现在有个动态生成的select下拉框,用类似下面的方法创建
var op1=new Array("1","2","3");
for(var i=0;i<op.length;i++)
{
var opt=document.createElement("option");
opt.setAttribute("value",op[i]);
var textnode=document.createTextNode(op[i]);
opt.appendChild(textnode);
s2.appendChild(opt);
}
请问怎么达到<%="2".equals(request.getParameter("s1"))?"selected":"" %>判断的效果?谢谢
...全文
198 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cgisir 2008-11-26
  • 打赏
  • 举报
回复
参考
<select id="s2">

</select>
<script>
var myVal = 2;
var op=new Array("1","2","3");
for(var i=0;i <op.length;i++)
{
s2.options[i] = new Option(op[i], op[i])
if(op[i]==myVal)s2.options[i].selected = true;
}
</script>
cyqlightrain 2008-11-26
  • 打赏
  • 举报
回复
2楼正解
liuyilidan 2008-11-26
  • 打赏
  • 举报
回复
var op1=new Array("1","2","3");
var Value = <%=request.getParameter("s1")%>;
for(var i=0;i <op.length;i++)
{
var opt=document.createElement("option");
opt.setAttribute("value",op[i]);
var textnode=document.createTextNode(op[i]);
opt.appendChild(textnode);
s2.appendChild(opt);
if(op[i] == Value)
{
s2.options[i].selected = true;
}
}
fay272 2008-11-26
  • 打赏
  • 举报
回复
javascript里加入
document.all("select的名字").value="2";
mark620 2008-11-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 liuyilidan 的回复:]
JScript codevar op1=new Array("1","2","3");
var Value = <%=request.getParameter("s1")%>;
for(var i=0;i <op.length;i++)
{
var opt=document.createElement("option");
opt.setAttribute("value",op[i]);
var textnode=document.createTextNode(op[i]);
opt.appendChild(textnode);
s2.appendChild(opt);

[/Quote]

正解。。
mengxj85 2008-11-26
  • 打赏
  • 举报
回复
function receiveServerData(_serverResult, context)
{
context.length=0;
var arrData = _serverResult.split(",");
for (var i = 0; i < arrData.length; i++)
{
var data = arrData[i].split("@");
context.options[context.length]=new Option(data[1],data[0]);
}
}
不悲不喜 2008-11-26
  • 打赏
  • 举报
回复
select标签赋值有多种方式
(1) 直接给 select的value赋值
(2) 将指定 option的selected 设定为true;
(3) 设置 select标签的selectedIndex
(4) 当然也可以在生成HTML代码的时候直接写出来.原理同1,2

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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