将用户输入值插入函数
Inserting User Input Values into a Function
我正在尝试获取通过 html 输入框输入的用户输入值,并将其作为我函数中的值(更具体地说,我代码中的 negKeyword 函数)。我认为正在发生的问题是此输入值存储为变量,因此当代码首次存储在内存中时,它存储为“”,因为用户尚未输入任何内容。我如何得到它,所以当用户输入它用用户输入的内容替换空白或“”时?
接下来我基本上想要发生的是用户点击一个按钮,然后它将用户输入的内容与 "negKeyword" 函数输出的内容进行比较,并给出它们是否匹配的结果(这在我的代码中的 booleanKeyword 函数中演示了操作。
这是我的代码。
var input = document.getElementById("input").value;
var arr = ['no', 'not', 'checked'];
var text = ''; //JS output variable.
var keyword = 'leak'; //Individual keyword.
function negKeyword() {
for (i = 0; i < arr.length; i++) {
if (text == input) { break; }
text = arr[i] + ' ' + keyword;
}
return text;
}
function booleanKeyword() {
if (input == negKeyword()) {
document.getElementById("result").style.color="green";
document.getElementById("result").innerHTML="Match";
} else {
document.getElementById("result").style.color="red";
document.getElementById("result").innerHTML="No Match";
}
}
document.getElementById("result2").innerHTML=keyword;
<label for="Full Negative Keyword">Negative Keyword</label> <input id="input" type="text" />
<div id="message">Result: <span id="result"></span></div>
<div id="message">Keyword: <span id="result2"></span></div>
<button id="test" onclick="booleanKeyword()">Click to Test</button>
您可以再次检索输入值,方法是获取输入值并将其分配给同一个变量(但在单击按钮后调用的函数内)。
var input = document.getElementById("input").value;
var arr = ['no', 'not', 'checked'];
var text = ''; //JS output variable.
var keyword = 'leak'; //Individual keyword.
function negKeyword() {
input = document.getElementById("input").value;
for (i = 0; i < arr.length; i++) {
if (text == input) { break; }
text = arr[i] + ' ' + keyword;
}
return text;
}
function booleanKeyword() {
input = document.getElementById("input").value;//The variable is reassigned, only after the click
if (input == negKeyword()) {
document.getElementById("result").style.color="green";
document.getElementById("result").innerHTML="Match";
} else {
document.getElementById("result").style.color="red";
document.getElementById("result").innerHTML="No Match";
}
}
document.getElementById("result2").innerHTML=keyword;
编辑:将相同的代码添加到 negKeyword()
函数,因为它也需要输入。
它不起作用,因为您的变量输入始终是“”。每次单击按钮时,您都必须为其分配新值。我刚刚将您的输入代码移动到 BooleanKeyword() 函数中。现在一切正常。
每当这样的事情不起作用时,只需尝试 log/alert 个值。
例如,您可以 alert(input + ' ' + negKeyword());在 booleanKeyword() 函数之上,您会自己发现问题。
var input;
var arr = ['no', 'not', 'checked'];
var text = ''; //JS output variable.
var keyword = 'leak'; //Individual keyword.
function negKeyword() {
for (i = 0; i < arr.length; i++) {
if (text == input) { break; }
text = arr[i] + ' ' + keyword;
}
return text;
}
function booleanKeyword() {
input = document.getElementById("input").value;
if (input == negKeyword()) {
document.getElementById("result").style.color="green";
document.getElementById("result").innerHTML="Match";
} else {
document.getElementById("result").style.color="red";
document.getElementById("result").innerHTML="No Match";
}
}
document.getElementById("result2").innerHTML=keyword;
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<label for="Full Negative Keyword">Negative Keyword</label> <input id="input" type="text" />
<div id="message">Result: <span id="result"></span></div>
<div id="message">Keyword: <span id="result2"></span></div>
<button id="test" onclick="booleanKeyword()">Click to Test</button>
</html>
我正在尝试获取通过 html 输入框输入的用户输入值,并将其作为我函数中的值(更具体地说,我代码中的 negKeyword 函数)。我认为正在发生的问题是此输入值存储为变量,因此当代码首次存储在内存中时,它存储为“”,因为用户尚未输入任何内容。我如何得到它,所以当用户输入它用用户输入的内容替换空白或“”时?
接下来我基本上想要发生的是用户点击一个按钮,然后它将用户输入的内容与 "negKeyword" 函数输出的内容进行比较,并给出它们是否匹配的结果(这在我的代码中的 booleanKeyword 函数中演示了操作。
这是我的代码。
var input = document.getElementById("input").value;
var arr = ['no', 'not', 'checked'];
var text = ''; //JS output variable.
var keyword = 'leak'; //Individual keyword.
function negKeyword() {
for (i = 0; i < arr.length; i++) {
if (text == input) { break; }
text = arr[i] + ' ' + keyword;
}
return text;
}
function booleanKeyword() {
if (input == negKeyword()) {
document.getElementById("result").style.color="green";
document.getElementById("result").innerHTML="Match";
} else {
document.getElementById("result").style.color="red";
document.getElementById("result").innerHTML="No Match";
}
}
document.getElementById("result2").innerHTML=keyword;
<label for="Full Negative Keyword">Negative Keyword</label> <input id="input" type="text" />
<div id="message">Result: <span id="result"></span></div>
<div id="message">Keyword: <span id="result2"></span></div>
<button id="test" onclick="booleanKeyword()">Click to Test</button>
您可以再次检索输入值,方法是获取输入值并将其分配给同一个变量(但在单击按钮后调用的函数内)。
var input = document.getElementById("input").value;
var arr = ['no', 'not', 'checked'];
var text = ''; //JS output variable.
var keyword = 'leak'; //Individual keyword.
function negKeyword() {
input = document.getElementById("input").value;
for (i = 0; i < arr.length; i++) {
if (text == input) { break; }
text = arr[i] + ' ' + keyword;
}
return text;
}
function booleanKeyword() {
input = document.getElementById("input").value;//The variable is reassigned, only after the click
if (input == negKeyword()) {
document.getElementById("result").style.color="green";
document.getElementById("result").innerHTML="Match";
} else {
document.getElementById("result").style.color="red";
document.getElementById("result").innerHTML="No Match";
}
}
document.getElementById("result2").innerHTML=keyword;
编辑:将相同的代码添加到 negKeyword()
函数,因为它也需要输入。
它不起作用,因为您的变量输入始终是“”。每次单击按钮时,您都必须为其分配新值。我刚刚将您的输入代码移动到 BooleanKeyword() 函数中。现在一切正常。
每当这样的事情不起作用时,只需尝试 log/alert 个值。
例如,您可以 alert(input + ' ' + negKeyword());在 booleanKeyword() 函数之上,您会自己发现问题。
var input;
var arr = ['no', 'not', 'checked'];
var text = ''; //JS output variable.
var keyword = 'leak'; //Individual keyword.
function negKeyword() {
for (i = 0; i < arr.length; i++) {
if (text == input) { break; }
text = arr[i] + ' ' + keyword;
}
return text;
}
function booleanKeyword() {
input = document.getElementById("input").value;
if (input == negKeyword()) {
document.getElementById("result").style.color="green";
document.getElementById("result").innerHTML="Match";
} else {
document.getElementById("result").style.color="red";
document.getElementById("result").innerHTML="No Match";
}
}
document.getElementById("result2").innerHTML=keyword;
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<label for="Full Negative Keyword">Negative Keyword</label> <input id="input" type="text" />
<div id="message">Result: <span id="result"></span></div>
<div id="message">Keyword: <span id="result2"></span></div>
<button id="test" onclick="booleanKeyword()">Click to Test</button>
</html>