您的位置:首页 > 其它

如何不用disable属性使select不能修改

2008-09-24 12:23 169 查看
在JSP里面,控制页面的select选项不可更改。

<form action="tijiao.do" method="post" name="form1">
<select size="1" ID="ti_record_type" NAME="ti_record_type" onChange="NoChangeRcd(this)">
<option value="0">研究所</option>
<option value="1" selected="selected">车间</option>
<option value="2">特殊</option>
</select>
<input type="submit" value="提交"/>

</form>
<script>
var selInx; //记录类型的选择索引,不能更改。
function window.onload(){
selInx = document.all.ti_record_type.selectedIndex;
}
function NoChangeRcd(sel){
sel.options(selInx).selected=true;
alert('不能修改项目的输入类型');
}
</script>

用Struts标签实现它:

<html:form action="test.do">
select : <html:select property="select" value="1" onchange="NoChangeRcd(this)">
<html:option value="0">研究所</html:option>
<html:option value="1">车间</html:option>
<html:option value="2">特殊</html:option>
</html:select>
<html:submit value="提交"/><html:cancel/>
</html:form>
<script>
var selInx; //记录类型的选择索引,不能更改。
function window.onload(){
selInx = document.all.testForm.select.value;
alert(selInx);
}
function NoChangeRcd(sel){
if(sel.value!=selInx){
alert('不能修改项目的输入类型');
}
}
</script>

如果下拉框的内容是从别处提取出来的,可以这样写。

<html:form action="test.do">
select : <html:select property="select" onchange="NoChangeRcd(this)">
<logic:present name="chargetypes">
<html:options collection="chargetypes" property="chargeTypeCode" labelProperty="chargeTypeName"/>
</logic:present>
</html:select>
<html:submit value="提交"/><html:cancel/>
</html:form>
<script>
document.all.testForm.select.value="2";
var selInx; //记录类型的选择索引,不能更改。
function window.onload(){
selInx = document.all.testForm.select.value;
}
function NoChangeRcd(sel){
if(sel.value!=selInx){
alert('不能修改项目的输入类型');
sel.value=selInx;
}
}
</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: