js如何根据 input value 设置 readOnly
<scripttype="text/javascript">functionChangeMode(Obj){varTagValue=Obj.value;if(TagVal...
<script type="text/javascript">
function ChangeMode(Obj){
var TagValue = Obj.value;
if (TagValue <> ""){
document.getElementById("fankui1_c").readOnly=true;
}
else {
document.getElementById("fankui1_c").readOnly=false;
}
}
</script>
<form>
........
<input type='text' name='fankui1_c' id='fankui1_c' size='50' maxlength='255' value='{FANKUI1_C}' onChange="ChangeMode(this);">
.....</form>
里面明明有值,但是只读属性还是无效,请问我哪儿设置的不对吗?谢谢 展开
function ChangeMode(Obj){
var TagValue = Obj.value;
if (TagValue <> ""){
document.getElementById("fankui1_c").readOnly=true;
}
else {
document.getElementById("fankui1_c").readOnly=false;
}
}
</script>
<form>
........
<input type='text' name='fankui1_c' id='fankui1_c' size='50' maxlength='255' value='{FANKUI1_C}' onChange="ChangeMode(this);">
.....</form>
里面明明有值,但是只读属性还是无效,请问我哪儿设置的不对吗?谢谢 展开
4个回答
展开全部
不等于应该用 "!=", 不能用"<>",改过来以后,onchange时就可以了
不过必须是ongchange(就是加载完成后,在改动内容的时候才会改成只读的)
如果是想一打开页面就根据页面上的内容来控制只读的话,可以用输入框onchange事件来判断,放到body的onload判断就可以了,代码如下
<body onload="ChangeMode(document.getElementById('fankui1_c'));">
<input type='text' id='fankui1_c' size='50' maxlength='255' value='{FANKUI1_C}'>
</body>
另外,js方法已经把输入框当参数传过去了,里面就不用在document.getEle....了,直接用Obj就可以了
不过必须是ongchange(就是加载完成后,在改动内容的时候才会改成只读的)
如果是想一打开页面就根据页面上的内容来控制只读的话,可以用输入框onchange事件来判断,放到body的onload判断就可以了,代码如下
<body onload="ChangeMode(document.getElementById('fankui1_c'));">
<input type='text' id='fankui1_c' size='50' maxlength='255' value='{FANKUI1_C}'>
</body>
另外,js方法已经把输入框当参数传过去了,里面就不用在document.getEle....了,直接用Obj就可以了
展开全部
依次获取input的值然后和你想要的值进行比较,如果相等就添加属性readyonly。
比如:想要值等于3的设置为readyonly
var
arr
=
document.getElementsByName("这是input的name值");
for(var
i=0;i<arr.length;i++){
if(arr[i].value==3){
arr[i].setAttribute("readOnly","readOnly");
}
}
这样就可以给你想要的input赋值为readOnly啦。
注:setAttribute中的readOnly一定要注意大小写!
比如:想要值等于3的设置为readyonly
var
arr
=
document.getElementsByName("这是input的name值");
for(var
i=0;i<arr.length;i++){
if(arr[i].value==3){
arr[i].setAttribute("readOnly","readOnly");
}
}
这样就可以给你想要的input赋值为readOnly啦。
注:setAttribute中的readOnly一定要注意大小写!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
依次获取input的值然后和你想要的值进行比较,如果相等就添加属性readyonly。
比如:想要值等于3的设置为readyonly
var arr = document.getElementsByName("这是input的name值");
for(var i=0;i<arr.length;i++){
if(arr[i].value==3){
arr[i].setAttribute("readOnly","readOnly");
}
}
这样就可以给你想要的input赋值为readOnly啦。
注:setAttribute中的readOnly一定要注意大小写!
比如:想要值等于3的设置为readyonly
var arr = document.getElementsByName("这是input的name值");
for(var i=0;i<arr.length;i++){
if(arr[i].value==3){
arr[i].setAttribute("readOnly","readOnly");
}
}
这样就可以给你想要的input赋值为readOnly啦。
注:setAttribute中的readOnly一定要注意大小写!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
提交后台了吗?没有提交不能激活方法的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询