你可以设置成readonly(只读) 这个可以修改值
解决方案 »
- 火狐 获取frameset对象 急急急急急急急
- 请推荐一款基于网页的im,谢谢!
- 请问这个功能能否实现?
- onmouse事件都有哪些
- 请问JAVASCRIPT中,我想把传进来的字符串根据每10个字符就插入一个\n,请问如何做?
- JS如何判断我传递的参数是不是event事件对象?
- csdn社区的菜单栏在点击以后才导入子菜单的功能是怎么做的?
- N个FORM(所有内容都一样),N不定,从数据库中取值,怎么样才能按到提交按钮??
- 我有一个例子,但是如何才能实现我以下的功能?
- 为什么ES6有了Class还是不能像服务端一样把文件(a.js)导包?
- 帮忙看下JQuery这个
- js怎么判断div下的内容全部加载完毕
你好,谢谢回答,那个控件设置成readonly? 能具体一点么? 真的不懂
{
document.getElementById("myForm").name.readOnly=false;
}
function radio_click_off()
{
document.getElementById("myForm").name.readOnly=true;
}
<html>
<head>
<script type="text/javascript">
function radio_click_on()
{
document.getElementById("myForm").name.disabled=false;
}
function radio_click_off()
{
document.getElementById("myForm").name.disabled=true;
}function formReset()
{
document.getElementById("myForm").name.disabled=false;
document.getElementById("myForm").reset();
}
</script>
</head><body>
<p>How to reset all data?</p><form name="form0" id="myForm">
Switch:<input type="radio" name="switch" value="Enable" checked="checked" onclick="radio_click_on()">Enable
<input type="radio" name="switch" value="Disable" onclick="radio_click_off()">Disable<br />
Name:<input name="name" type="text" size="20"><br />
Age:<input name="age" type="text" size="20"><br />
<br />
<input type="button" onclick="formReset()" value="Cancel">
</form>
</body></html>
function formReset() {
if(初始值设置为enable){document.getElementById("myForm").name.disabled=false; }
else{document.getElementById("myForm").name.disabled=true; }
document.getElementById("myForm").reset();
}
不知道还有没有其它的方法的?
看这样写行不:function formReset()
{
document.getElementById("myForm").reset();
if(document.getElementById("enable").name.checked=="checked"){
document.getElementById("myForm").name.disabled=false;
}else{
document.getElementById("myForm").name.disabled=true;
}
}不是首先调用一次reset()方法还原按钮的初始值,不是input按钮没恢复么,再判断一下默认的单选框选择的是哪一个,单独对input框设置一次就行了
看这样写行不:function formReset()
{
document.getElementById("myForm").reset();
if(document.getElementById("enable").checked==true){
document.getElementById("myForm").name.disabled=false;
}else{
document.getElementById("myForm").name.disabled=true;
}
}首先调用一次reset()方法还原按钮的初始值,不是input按钮没恢复么,再判断一下默认的单选框选择的是哪一个,单独对input框设置一次就行了修改了一下:if(document.getElementById("enable").checked==true)
Switch:<input type="radio" name="switch" value="Enable" checked="checked" onclick="radio_click_on()">就是不对的。
因为你的switch是后台的值,所以在获取后台值后,你需要进行一个页面初始化操作://页面初始化函数
function init(){
if(switchstr=="Enable"){document.getElementById("myForm").switch[0].checked=true;radio_click_on();}
if(switchstr=="Disable"){document.getElementById("myForm").switch[1].checked=true;radio_click_off();}
}然后document.getElementById("myForm").reset();只是恢复表单初始值而已,与DOM操作没关系。所在在formReset中,再次执行init()即可;这样页面会根据你开始从后台获取的switch值来进行页面初始化。
整个代码如下:<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
//页面初始化函数,个人觉得这个函数必须加。
//不管是你的需求,还是从你页面的逻辑了解来看,这个都不能少
function init(){
if(switchstr=="Enable"){document.getElementById("myForm").switch[0].checked=true;radio_click_on();}
if(switchstr=="Disable"){document.getElementById("myForm").switch[1].checked=true;radio_click_off();}
}
function radio_click_on()
{
document.getElementById("myForm").name.disabled=false;
}
function radio_click_off()
{
document.getElementById("myForm").name.disabled=true;
}
function formReset()
{
document.getElementById("myForm").reset();
//reset只是初始化默认值,对DOM的操作,需要再执行页面初始化init();
init();
}
//获取后台值,假设后台传值为Enable,你也可以改成Disable,这样开始name就是不能填写的
var switchstr = "Disable";
</script>
</head>
<body onload="init()">
<p>How to reset all data?</p>
<form name="form0" id="myForm">
Switch:<input type="radio" name="switch" value="Enable" onclick="radio_click_on()">Enable
<input type="radio" name="switch" value="Disable" onclick="radio_click_off()">Disable<br />
Name:<input name="name" type="text" size="20"><br />
Age:<input name="age" type="text" size="20"><br />
<br />
<input type="button" onclick="formReset()" value="Cancel">
</form>
</body>
</html>
看这样写行不:function formReset()
{
document.getElementById("myForm").reset();
if(document.getElementById("enable").checked==true){
document.getElementById("myForm").name.disabled=false;
}else{
document.getElementById("myForm").name.disabled=true;
}
}首先调用一次reset()方法还原按钮的初始值,不是input按钮没恢复么,再判断一下默认的单选框选择的是哪一个,单独对input框设置一次就行了修改了一下:if(document.getElementById("enable").checked==true)
谢谢回答,我测试了一下,是可以的哦,多加了一个id就解决了,太好了!!