今天做了1个关于税率的下拉列表,用到很多selected下拉列表的相干技能,现总结以下:
下拉列表代码以下:
<span style="font-size:12px;"><td class='tdLeftHead'>税率</td>
<td>
<select id='tax1' onchange='taxChange(this.value,1,"thirdparty_profit")' name='thirdparty_taxid'>
<s:if test="profitList[0].get('THIRDPARTY_TAXID') == ⑴" >
<option selected="selected" value=⑴>N/A</option>
</s:if>
<s:else>
<option value=⑴>N/A</option>
</s:else>
<s:iterator value="taxTypeList" status="tar_1" >
<s:set name="index" value="#tar_1.getIndex()"/>
<s:set name="id" value="taxTypeList[#index].getId()"/>
<s:set name="taxid" value="profitList[0].get('THIRDPARTY_TAXID')"/>
<s:if test="#taxid != #id " >
<option value='<s:property value="taxTypeList[#index].getId()" />' >
<s:property value="taxTypeName" />
</option>
</s:if>
<s:else>
<option selected="selected" value='<s:property value="taxTypeList[#index].getId()" />'> <s:property value="taxTypeName" /></option>
</s:else>
</s:iterator>
</select>
</td></span>
经常使用取值方法:
var myselect=document.getElementById("tax"+i); // 获得下拉列表对象
var myIndex=myselect.selectedIndex ; // 获得下拉列表当前索引
var taxId = myselect.options[myIndex].value; // 获得当前索引对应的option选项value值
var taxText = myselect.options[myIndex].text; // 获得当前索引对应的option选项文本框内容值
在JS中更改展现option选项方法:传入你想展现的选项对应的value值便可。
$("#tax1").val(value); // 选中下拉列表,给其传option选项value值,就会展现该value值对应索引的内容值。
增加1个选项的方法:
<span style="font-size:14px;"> var option=document.createElement("option");
option.text="nami";
option.value="nami1";
var x=document.getElementById("mySelect");
try
{
x.add(option,null); // 标准实现
}
catch(ex)
{
x.add(option); // 仅在IE中实现
}</span>
将引入功能(将1张接口表中数据,引入到税率表中)相干JSP代码贴出来,以后可以翻看怎样在JS中取出下拉列表的对象及其属性值。
<span style="font-size:14px;"> function doInto(){
var TP_TAX_RATE = $("#taxAisas1").val();
var OP_TAX_RATE = $("#taxAisas2").val();
var OS_TAX_RATE = $("#taxAisas3").val();
var TR_TAX_RATE = $("#taxAisas4").val();
var TP_AMOUNT = $("#dealAisasPrice1").val();
var OP_AMOUNT = $("#dealAisasPrice2").val();
var OS_AMOUNT = $("#dealAisasPrice3").val();
var TR_AMOUNT = $("#dealAisasPrice4").val();
$('#dealPrice1').val(TP_AMOUNT);
$('#dealPrice2').val(OP_AMOUNT);
$('#dealPrice3').val(OS_AMOUNT);
$('#dealPrice4').val(TR_AMOUNT);
var flag_TP = false;
var flag_OP = false;
var flag_OS = false;
var flag_TR = false;
var id1,id2,id3,id4;
<s:iterator value="taxTypeList" >
<s:set name="index" value="#tar_1.getIndex()"/>
<s:set name="id" value="taxTypeList[#index].getId()"/>
<s:set name="taxTypeName" value="taxTypeList[#index].getTaxTypeName()"/>
――这里的id1即为option选项对应的value值
if(TP_TAX_RATE=='<s:property value="taxTypeName" />'){
id1= '<s:property value="id" />'
flag_TP = true;
}
if(OP_TAX_RATE=='<s:property value="taxTypeName" />'){
id2= '<s:property value="id" />'
flag_OP = true;
}
if(OS_TAX_RATE=='<s:property value="taxTypeName" />'){
id3= '<s:property value="id" />'
flag_OS = true;
}
if(TR_TAX_RATE=='<s:property value="taxTypeName" />'){
id4= '<s:property value="id" />'
flag_TR = true;
}
</s:iterator>
――给selected下拉框设置value值,便可切换为我们希望展现的文本框内容
$("#tax1").val(id1);
$("#tax2").val(id2);
$("#tax3").val(id3);
$("#tax4").val(id4);
taxChange(id1,1,"thirdparty_profit");
taxChange(id2,2,"selfserv_profit");
taxChange(id3,3,"softwareserv_profit");
taxChange(id4,4,"train_serv_profit");
if(!flag_TP){
alert(TP_TAX_RATE + '税率不存在。');
return false;
}
if(!flag_OP){
alert(OP_TAX_RATE + '税率不存在。');
return false;
}
if(!flag_OS){
alert(OS_TAX_RATE + '税率不存在。');
return false;
}
if(!flag_TR){
alert(TR_TAX_RATE + '税率不存在。');
return false;
}
} </span>