如果启用1中有输入(基本上重新启用它),我如何启用input2,我仍然是一个初学者,不知道这样做。
<form id="form1">
<input type="text" id="text1" onkeyup="valid()">
<input type="text" id="text2" disabled="disabled">
<script language="javascript">
function valid() {
var firstTag = document.getElementById("text1").length;
var min = 1;
if (firstTag > min)
//if the text entered is longer than 1 alert to screen
{
//enable the text2 tag
}
}
//once input from text1 is entered launch this function
</script>
</form>
答案 0 :(得分:0)
如果我正确理解了您的问题,您想启用第二个输入,只要第一个输入中有值?
然后使用dom更改该输入的禁用状态
if(firstTag > min)
//if the text entered is longer than 1 alert to screen
{
//enable the text2 tag
document.getElementById("text2").disabled = false;
}
答案 1 :(得分:0)
请尝试以下代码:
var text1 = document.getElementById("text1");
text1.onchange = function () {
if (this.value != "" || this.value.length > 0) {
document.getElementById("text2").disabled = false;
} else {
document.getElementById("text2").disabled = true;
}
}
<input type="text" id="text1">
<input type="text" id="text2" disabled="disabled">
答案 2 :(得分:0)
我认为您应该使用.value
来获取值。然后,测试其.length
。即firstTag
应该是:
var firstTag = document.getElementById("text1").value.length;
而且,完整的功能应该是:
function valid() {
var min = 1;
var firstTag = document.getElementById("text1");
var secondTag = document.getElementById("text2");
if (firstTag.length > min) {
secondTag.disabled = false
} else {
secondTag.disabled = true
}
}
让我知道是否可行。
答案 3 :(得分:0)
首先,您必须将代码“ document.getElementById(” text1“)。length ”更正为“ document.getElementById(” text1“)。value.length >”。
第二,有两种方法可以删除禁用的属性。
1) jQuery -$('#text2')。prop('disabled',false);
2) JavaScript -document.getElementById(“ text2”)。disabled = false;
下面是使用javascript的示例
function valid() {
var firstTag = document.getElementById("text1").value.length;
var min = 1;
if (firstTag > min) {
document.getElementById("text2").disabled = false;
}
else
{
document.getElementById("text2").disabled = true;
}
}
<input type="text" id="text1" onkeyup="valid()">
<input type="text" id="text2" disabled="disabled">
答案 4 :(得分:0)
您可以使用第二个元素的trustAsHtml
属性。这是一个布尔型属性(是/否)。
还要注意,您需要使用.disabled
来检索输入元素的文本。
演示:
.value
function valid() {
var text = document.getElementById("text1").value;
var minLength = 1;
document.getElementById("text2").disabled = text.length < minLength;
}
valid(); // run it at least once on start
答案 5 :(得分:0)
我将像这样将@Korat代码事件更改为keyup:
var zlib = require('zlib');
app.get('/', function(req, res){
res.setHeader('Content-Encoding', 'gzip')
res.setHeader('Content-Type', 'text/plain')
var text = "Hello World!";
var buf = new Buffer(text, 'utf-8');
zlib.gzip(buf, function(_, result) {
res.send(result);
});
});
app.listen(3001)
答案 6 :(得分:0)
尽管输出始终设置为null,但我尝试创建自己的示例,以便我可以对多个输入进行自动化,这是我不能从text1给出text2的ID吗?
<div id="content">
<form id="form1">
<input type="text" id="text1" onkeyup="valid(this.id,text2)">
<input type="text" id="text2" disabled="disabled">
<script language ="javascript">
function valid(firstID,secondID){
var firstTag = document.getElementById(firstID).value.length;
var min = 0;
if(firstTag > min)
//if the text entered is longer than 1 alert to screen
{
document.getElementById(secondID).disabled = false;
}
if(firstTag == 0){
document.getElementById(secondID).disabled = true;
}
}
//once input from text1 is entered launch this function
</script>
</form>
答案 7 :(得分:0)
如果我正确理解您的意思,那么您要问的是,当第一个输入中输入的字符超过一个时,如何从第二个输入中删除disabled
属性( enable )领域。
您可以使用oninput
事件。每次将新字符添加到第一个输入字段时,这都会调用您的函数。然后,您只需要将第二个输入字段的disabled
属性设置为false。
这是一个可行的示例。
<!DOCTYPE html>
<html>
<body>
<!-- Call enableInput2 on input event -->
<input id="input1" oninput="enableInput2()">
<input id="input2" disabled>
<script>
function enableInput2() {
// get the text from the input1 field
var input1 = document.getElementById("input1").value;
if (input1.length > 1) {
// enable input2 by setting disabled attribute to 'false'
document.getElementById("input2").disabled = false;
} else {
// disable input2 once there is 1 or less characters in input1
document.getElementById("input2").disabled = true;
}
}
</script>
</body>
</html>
注意:更好的做法是使用addEventListener
而不是将事件处理程序(例如onclick
,oninput
等)直接放入HTML。