我想在select中选择对应值后,让其在a1里显示出来,可是只能显示一个值,我想让a1里显示多个值,如何实现?代码如下:
//list为前面页面传过来的值,假设“name”值为a,b,c,d
${item.name }
/c:forEach
[b]问题补充:[/b]
如果不使用标签,代码如下:
a
b
c
d
这时候在select中选中“a”,则在a1里可以显示“a”,如果在select里再选“b",在a1里的值变为"ab",以此类推,我要实现的就是这功能,可是使用标签之后,在select里每次选完后,a1里的值只显示第一次在select里选的值,无法跟着变化,不知道说清楚没,希望大家帮忙解决一下,我以前没什么编程经验,现在遇到困难了,不知道咋解决,谢谢大家了。
你应该写个js方法
function changeValue(elem)
{
document.getElementById('a1').value+=elem.options[elem.selectedIndex].value;
}
//list为前面页面传过来的值,假设“name”值为a,b,c,d
${item.name }
/c:forEach
这样不是实现了么?每select一个会在a1里加一个,代码是对的
我想你的问题可以用多选下拉列表框解决,我把你的代码修改成如下:
//将下拉列表框设置为多选,显示条目size为4
//list为前面页面传过来的值,假设“name”值为a,b,c,d
${item.name }
/c:forEach
a1里显示多个值,你的意思是什么,是指下拉列表是多选的吗,
好像理解了LZ的意思了。
首先下拉菜单是可以多选的。
然后监听select时间,用JS把select选中的值动态的添加到a1中
看了你的问题补充,我想你的js方法应该这样写:
function changeValue(elem)
{
document.getElementById('a1').text+=elem.options[elem.selectedIndex].text;
}
你再试一下,不行留言。
上面的补充不太合适,楼上的老师写的就可以了,或者是以下的样子:
function changeValue(elem)
{
document.getElementById('a1').value+=elem.options[elem.selectedIndex].text;
}
你可以用调试器看看到底有没执行changeValue方法
document.getElementById('a1').value+=elem.options[elem.selectedIndex].text;
这种方式就是取[color=red]a[/color] 红色部分啦
是的。你的方式就是取前面的那个a,在js里两个都可以取到。我也有个问题有待解答,你比较有经验帮我看一下吧。问题是:Web项目怎样考虑用户级的问题,在问题区有的。