HTML / JS文本识别变量显示器

时间:2017-05-22 14:10:06

标签: javascript html

我无法让<div id="output">部分显示变量txtOutput,或者可能未定义或更改变量txtOutput。 我将非常感谢有关重新定义此变量或如何显示它的帮助。 (虽然空文本框功能有效)

&#13;
&#13;
function smartinput() {
  var txtInput = document.forms["form"]["inputA"].value;
  var txtOutput;
  var input = txtInput.value;
  if (txtInput == null || txtInput == "") {
    alert("Please put text in Input");
    return false;
  } else if (txtInput == "Hi") {
    return output.value = "Hello";
  }
  document.getElementByID("Output").innerHTML = txtOutput;
}
&#13;
<p><strong>Note:</strong> The output element is not supported in Edge 12 or Internet Explorer and earlier versions.</p>
<h1> Smart Responder Test 1 </h1>
<form name="form">
  <fieldset>
    <label> Input: </label>
    <textarea cols="30" rows="2" name="inputA" id="txtInput"></textarea>
    <p></p>
    <input type="button" value="Submit" onclick="smartinput()" />
    <p></p>

    <label>Output: </label>
    <div id="Output"></div>

  </fieldset>
</form>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:2)

首先,你为方法getElementById做了一个拼写错误,纠正了这个。

其次,您定义变量txtOutput但稍后不使用它,而是使用output。只需将output更改为txtOutput

即可
function smartinput() {
  var txtInput = document.forms["form"]["inputA"].value;
  var txtOutput;
  var input = txtInput.value;
  if (txtInput == null || txtInput == "") {
    alert("Please put text in Input");
    return false;
  } else if (txtInput == "Hi") {
    txtOutput= "Hello";
  }
  document.getElementById("Output").innerHTML = txtOutput;
}

并且您不需要txtOutput.value,因为它只是结果的变量。

答案 1 :(得分:0)

一些错误

  • 您应该将getElementById放到...byID
  • 如果它为空或为空,请将其设为!(elem or value)
  • 输出元素不是文本区域,因此值不起作用。将其更改为innerHTMLinnerText
  • TxtInputinput在您的代码中相同

&#13;
&#13;
function smartinput() {
  var txtInput = document.forms["form"]["inputA"];
  var input = txtInput.value;
  var output = document.getElementById("Output");
  if (!input) {
    alert("Please put text in Input");
    return false;
  } else if (input == "Hi") {
    return output.innerHTML = "Hello";
  }
}
&#13;
<p><strong>Note:</strong> The output element is not supported in Edge 12 or Internet Explorer and earlier versions.</p><h1> Smart Responder Test 1 </h1><form name="form"><fieldset><label> Input: </label><textarea cols="30" rows="2" name="inputA" id="txtInput"></textarea><p></p><input type="button" value="Submit" onclick="smartinput()" /><p></p><label>Output: </label><div id="Output"></div></fieldset></form>
&#13;
&#13;
&#13;