全局将用户输​​入文本替换为JS中元素ID的修改输出

时间:2018-02-06 19:52:23

标签: javascript html input replace

我目前正在学习在JS中使用replace方法。我能够使用控制台检查输出,使其在一个简单的函数中工作。但是我现在正致力于创建一个简单的用户界面来与该功能进行交互,这已经造成了一些困难。我可以接受并重新打印用户的文本功能,但替换部分似乎没有正常工作,因为我已经写好了。这是HTML:

<!DOCTYPE html>
<!-- Create a function grabText that replaces the char - with _ -->
<html lang="en">
  <meta charset="utf-8">
<head>
  <title>HMTL Template</title>
</head>
<body>
  <input type="text"                         id="inputField" 
      placeholder="Input Text"/>
    <button id="clickButton" onclick="grabText();">Run</button>
    <p id="outputText"></p>

   </body>
</html>

这是JS:

var inputText;

function grabText () {
 inputText = document.querySelector("#inputField");
   document.getElementById("outputText").innerHTML = inputText.value;
  inputText.value.replace(/-/g , "_");
  document.getElementById("outputText").innerHTML = inputText.value;

}

我怀疑我使用.value的位置和方式存在问题。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

请记住replace会返回一个新字符串,但不会更改现有字符串。

var inputText;
function grabText() {
  inputText = document.querySelector("#inputField");
  document.getElementById("outputText").innerHTML = inputText.value.replace(/-/g, "_");
}
<input type="text" id="inputField" placeholder="Input Text" />
<button id="clickButton" onclick="grabText();">Run</button>
<p id="outputText"></p>