完全是新手...... 我只是想知道如何在第二个输入字段填充时动态禁用输入字段
例如:
<td><input type="text" name="num-input1" id="dis_rm" value=""></input></td>
<td><input type="text" name="num-input2" id="dis_per" value="" ></input></td>
请...任何链接和提示都可以......
答案 0 :(得分:12)
您只需要给它一个禁用的属性:
document.getElementById("dis_rm").disabled = true;
document.getElementById("dis_per").disabled = true;
您可以使用on change事件来查看其中一个是否已填满:
var dis1 = document.getElementById("dis_rm");
dis1.onchange = function () {
if (this.value != "" || this.value.length > 0) {
document.getElementById("dis_per").disabled = true;
}
}
所以如果第一个被填满,第二个将被禁用
答案 1 :(得分:2)
$('#dis_per').blur(function(){
if($(this).val().length != 0){
$('#dis_rm').attr('disabled', 'disabled');
}
});
http://jsfiddle.net/jasongennaro/D7p6U/
说明:
当第二个输入失去焦点时... .blur()
检查内部是否有东西。通过确保其长度不为零!=0
如果其中包含内容,请添加attribute
disabled
并将其设置为disabled
答案 2 :(得分:1)
$('#secondinput').live('blur',function(){
$('#firstinput').attr('disabled', true);
});
当你填充第二个输入字段并点击其他地方.......... 时,tihs有效
答案 3 :(得分:1)
只需将其添加到您的第二个文本框中:
onblur="document.getElementById('dis_rm').disabled = (''!=this.value);"
答案 4 :(得分:0)
在disabled
事件触发(用于退出字段)或OnBlur
事件触发时(当然,验证时),在要禁用的字段上设置OnChanged
标志关于改变)。
答案 5 :(得分:0)
我们可以省略一些步骤,将表单称为对象。
document.form1.num-input2.onchange = function() {
if ( this.value != "" || this.value.length > 0 ) {
document.form1.num-input1.disabled = true;
}
}
答案 6 :(得分:0)
我喜欢这个答案,使用Jquery:
$('#seconddiv').live('focus',function(){
$('#firstdiv').attr('disabled', true);
});
我有一个搜索栏,每次按键都会显示搜索结果,如果没有返回任何结果,则会向用户显示一个表单以寻求帮助。但如果他们填写“询问表格”,然后再次输入搜索栏,它将删除他们在询问表格中输入的所有内容。所以为了解决这个问题,我在ask表单中给出了所有输入id为“second div”和搜索字段id =“firstdiv”。现在,如果他们点击或标签到ask表单的其中一个输入字段,它将禁用搜索栏,以便他们的数据永远不会被覆盖。
如果他们改变主意,我还会添加一个重新启用搜索表单的按钮。
对于新手 - 我把代码放在文档的头部,如下所示:
<html>
<head>
<script type="text/javascript">
$('#seconddiv').live('focus',function(){
$('#firstdiv').attr('disabled', true);
});
</script>
</head>
<body>
....