jsp中<html:select>标签的用法
项目中用法
<% Organinfo organinfo= (Organinfo)session.getAttribute("organinfo"); organinfo.getOid(); %>
<html:select property="officersinfo.oname" style="width:150px">
<html:optionsCollection name="onamelist" label="oname" value="oid"/>
</html:select>
<html:select>标签的用法 <html:select property="theChoice">
<html:options collection="choiceLists" property="value" labelProperty="description" />
</html:select>
//theChoice是beanForm的成员 choiceLists可以是一个 List 类型的bean 意思就是dropdown list的全部内容,来自一个叫“choiceLists”的collection,对这个collection里的每个成员进行
getValue()和getDescription(),即得到dropdown list每个item的value和text。这个dropdown list中谁被选中,决定
于你的bean的getTheChoice()返回的值和这个Collection中哪个成员的getValue()相等。
好像这算是一种用法,别的还有好多别的用法,看看这里吧: http://struts.apache.org/userGuide/struts-html.html
select标签的用法比较复杂,什么name,property,labelname,labelproperty,id这些属性用得乱七八糟 我是这样实现的
<html:select property="customer_id">
<logic:iterate name="customer" id="cusbean">
<option value='<bean:write name="cusbean" property="value"/>'>
<bean:write name="cusbean" property="label"/>
</option>
</logic:iterate>
</html:select>
第一行的customer_id 是 ActionForm里定义的变量 第二行的customer是一个collection,存放的是一个自定义的bean,bean里只有两个属性(label和value),在action中从
数据库读入客户信息,写入自定义的bean,在将bean放入collection,最后再写入request(request.setAttribute("customer",mybean);),cusbean是id名字可以随便取,它将request中的customer转换成jsp page scope 的bean,第三、第四行就可以用bean:write把它的内容写出来了
<html:select property="atprovince">
<html:optionsCollection name="PreAddagentActionForm" property="provinceList" label="provincename" value="provinceid"/> 使用html:optionsCollection 就可以了。
项目,销售
<html:select property="username" name="userlistForm">
<logic:iterate id="dept" name="depts">
<html:option value="1">
<bean:write name="dept" property="name"/>
</html:option>
</logic:iterate>
</html:select>
查看文章
html:select标签用法2009-05-27 08:54<html:select property="if_end">
<option value="0">否</option> <option value="1">是</option>
</html:select> 将option中value的值给if_end 动态用法一:
<html:select property="personnelId">
<html:option value="">请选择</html:option>
<html:options collection="personList" property="personId" labelProperty="personName"/>
</html:select>
代码解释:
<html:select property="personnelId"> :
该部分代码最终返回的值存储在personnelId变量中;
<html:option value="">请选择</html:option> 默认选项,值为空,为了满足用户不想选择任何选项的需求;
<html:options collection="personList" property="personId" labelProperty = "personName"/> : <html:options>标签会自动根据参数产生多个<option>。其中,collection属性指的是待迭代的集合变量,property设
定的是该<option>的value,labelProperty设定的是页面看到的内容。
注:personList必须是Collection类型的,而且封装的是一个包含personId,personName属性的对象。
动态用法二:
有时候用标签的限制太多就用下面这个:
<SELECT name="deid">
<logic:present name="departarray1">
<logic:iterate id="depart" name="departarray1">
<option value="<bean:write name="depart" property="deId"/>">
<bean:write name="depart" property="deName"/>
</option>
</logic:iterate>
</logic:present>
</SELECT>
代码解释:
<logic:present name="departarray1"> :
判断是否存在departarray1对象,如果存在的话,就执行嵌套标签之中的内容,如果不存在就跳过。
<logic:iterate id="depart" name="departarray1"> :
从departarray1集合对象中取出一个对象,并存入对象变量depart中。注:此处的departarray1必须是一个集合类型变
量。depart相当于一个局部变量,是用来存储每次取出来的对象的。
<option value="<bean:write name="depart" property="deId"/>"> :
每一个<option>元素选项的value都是<bean:write name="depart" property="deId"/>,含义是depart对象的deID属性
值。
<bean:write name="depart" property="deName"/> :
这是每一个<option>元素在浏览器上的显示,道标depart对象的deName属性值。
你可以在页面里面定义一个变量,然后动态改变这个变量,在函数里面判断这个变量的值后,再设置selected,如:
form1.myselected.options[i].selected = true
<script> var dymanicValue = 'yourDymanicValue'; function initSel() {
var oSel = document.getElementById('sel');
for (var i = 0; i < oSel.length; i++) {
if (dymanicValue == oSel[i].value) {
oSel[i].selected = true;
break;
} } }
window.onload = initSel;
</script>
<select id='sel'>
</select>
// 给定一个值,然后对Select列表操作,如:判定是否有给定值,选择给定值,替换给定值等
/*给定一个值域,Select列表自动选中该值域*/
function HSSelectItem(selectObj,itemValue) {
for(var i=0;i<selectObj.options.length;i++) {
if(selectObj.options[i].value == itemValue) {
selectObj.options[i].selected = true;
break;
} } }
/*给定一个值域,文本域,更新Select列表该值域的对应文本域*/
function HSUpateItem(selectObj,itemText,itemValue) {
for(var i=0;i<selectObj.options.length;i++) {
if(selectObj.options[i].value == itemValue) {
selectObj.options[i].text = itemText;
break;
} } }
// Select列表的项的操作,如:添加,删除某项
/*给定一个值域,Select列表自动选中该值域*/
function HSInsertItem(selectObj,itemText,itemValue) {
var varItem = new Option(itemText,itemValue);
selectObj.options.add(varItem);
//添加到指定的位置
//selectObj.options.add(varItem,2);
}
/*给定一个值域,Select列表删除该值域*/
function HSDeleteItem(selectObj,itemValue) {
for(var i=0;i<selectObj.options.length;i++) {
if(selectObj.options[i].value == itemValue) {
selectObj.remove(i);
break;
} } }
// Select列表的当前值操作:如取得文本域,值域,Index等
function HSCurText(selectObj){
var type=document.getElementById("type").options[document.getElementById ("type").options.selectedIndex].value var index = selectObj.options.selectedIndex;
var text = selectObj[index].text;
var val=selectObj[index].value;
alert('text:'+text+',value:'+val+',index:'+index);
}
// Select列表的项的全部清空
function HSClear(selectObj) {
selectObj.options.length = 0;
}
//DOM 创建 Select 标签
function HSCreate() {
var myselect = document.createElement('select');
myselect.name = "dom";
myselect.setAttribute('atr', 'atr')
myselect.onchange = function() {
alert("change");
}
var itemText = new Array();
itemText[0] = "opt1";
itemText[1] = "opt2";
var itemValue = new Array();
itemValue[0] = "1";
itemValue[1] = "0";
for (var i = 0; i < 2; i++) {
myselect.options[i] = new Option(itemText[i], itemValue[i]);
}
myselect.options[0].selected = true;
document.documentElement.appendChild(myselect);
}
//测试代码:
function test(t) {
var type=document.getElementById("type");
if(t==1){
HSSelectItem(type,2);
}else if(t==2){
HSInsertItem(type,'new',5);
}else if(t==3){
HSDeleteItem(type,4);
}else if(t==4){
HSCurText(type);
}else if(t==5){
HSClear(type);
}else if(t==6){
HSCreate();
} }
// 给定一个值,然后对Select列表操作,如:判定是否有给定值,选择给定值,替换给定值等 /*给定一个值域,Select列表自动选中该值域*/
function HSSelectItem(selectObj,itemValue) {
for(var i=0;i<selectObj.options.length;i++) {
if(selectObj.options[i].value == itemValue) {
selectObj.options[i].selected = true;
break;
} } }
/*给定一个值域,文本域,更新Select列表该值域的对应文本域*/
function HSUpateItem(selectObj,itemText,itemValue) {
for(var i=0;i<selectObj.options.length;i++) {
if(selectObj.options[i].value == itemValue) {
selectObj.options[i].text = itemText;
break;
} } }
// Select列表的项的操作,如:添加,删除某项 /*给定一个值域,Select列表自动选中该值域*/
function HSInsertItem(selectObj,itemText,itemValue) {
var varItem = new Option(itemText,itemValue);
selectObj.options.add(varItem);
//添加到指定的位置
//selectObj.options.add(varItem,2);
}
/*给定一个值域,Select列表删除该值域*/
function HSDeleteItem(selectObj,itemValue) {
for(var i=0;i<selectObj.options.length;i++) {
if(selectObj.options[i].value == itemValue) {
selectObj.remove(i);
break;
} } }
// Select列表的当前值操作:如取得文本域,值域,Index等
function HSCurText(selectObj){
var type=document.getElementById("type").options[document.getElementById("type").options.selectedIndex].value var index = selectObj.options.selectedIndex;
var text = selectObj[index].text;
var val=selectObj[index].value;
alert('text:'+text+',value:'+val+',index:'+index);
}
// Select列表的项的全部清空
function HSClear(selectObj) {
selectObj.options.length = 0;
}
//DOM 创建 Select 标签
function HSCreate() {
var myselect = document.createElement('select');
myselect.name = "dom";
myselect.setAttribute('atr', 'atr') myselect.onchange = function() {
alert("change");
}
var itemText = new Array();
itemText[0] = "opt1";
itemText[1] = "opt2";
var itemValue = new Array();
itemValue[0] = "1";
itemValue[1] = "0";
for (var i = 0; i < 2; i++) {
myselect.options[i] = new Option(itemText[i], itemValue[i]);
}
myselect.options[0].selected = true;
document.documentElement.appendChild(myselect);
}
//测试代码:
function test(t) {
var type=document.getElementById("type");
if(t==1){
HSSelectItem(type,2);
}else if(t==2){
HSInsertItem(type,'new',5);
}else if(t==3){
HSDeleteItem(type,4);
}else if(t==4){
HSCurText(type);
}else if(t==5){
HSClear(type);
}else if(t==6){
HSCreate();
}
}
HTML代码:
view plaincopy to clipboardprint?
<a href="javascript:test(1);">test1</a>
<a href="javascript:test(2);">test2</a>
<a href="javascript:test(3);">test3</a>
<a href="javascript:test(4);">test4</a>
<a href="javascript:test(5);">test5</a>
<a href="javascript:test(6);">test6</a> <br>
<select id =type style="HEIGHT: 20px" >
<option value="" SELECTED>select</option>
<option value="1" >Ever</option>
<option value="2" >Zm</option>
<option value="3" >Cos</option>
<option value="4" >Yan</option>
</select>
Create Trigger Trg_number on number for delete as update b set id=null from house.dbo.employenumber b inner join deleted a on a.id=b.id