用于JS函数的输出的用户输入

时间:2016-11-14 20:19:01

标签: javascript html converter

我试图从HTML文件中获取用户输入,转换它,然后使用<input>将其输出回页面而不是提示。

这是我到目前为止所拥有的。

function bhedTester() {
    alpha = "ABC";
    bhed = "JYI";

    btext = "";
    i = 0;

    while (i < norm.length) {
        ind = alphabet.indexOf(norm.charAt(i));
        btext = btext + bhed.charAt(ind);
        i++;
    }
    btext
}

我已经使用提示命令对此进行了测试,但它确实有效,但是当我使用

document.getElementById 

OR

document.form_name._input_name.value 

然后返回它似乎都不起作用。

有人可以提供建议吗?

3 个答案:

答案 0 :(得分:0)

要写入div,您必须这样做:

document.getElementById("yourDiv").innerHTML= bhedTester();

之后你需要从你写的函数中返回一个字符串。

现在它没有返回任何东西。

所以你的代码应该是这样的:

    function bhedTester() {
    alpha = "ABC";
    bhed = "JYI";

    btext = "";
    i = 0;

    while (i < norm.length) {
        ind = alphabet.indexOf(norm.charAt(i));
        btext = btext + bhed.charAt(ind);
        i++;
    }
    return btext;
}

由于我不知道您的normalphabet无法为您提供准确的解决方案。

答案 1 :(得分:0)

如果您从DOM事件中触发此功能,则必须返回btext。

function bhedTester() {
  var alpha = "ABC";
  var bhed = "JYI";

  var btext = "";
  var i = 0;

  while (i < norm.length) {
    var ind = alphabet.indexOf(norm.charAt(i));
    btext = btext + bhed.charAt(ind);
    i++;
  }
  return btext
}

答案 2 :(得分:0)

您需要在输入中更改文本或单击按钮时进行侦听。您的代码只在页面加载时运行。键入文本时,它不会神奇地运行。您需要更改它以在用户更改文本时运行。因此,您需要使用addEventListener来绑定事件。

//bind the change event
document.getElementById("foo").addEventListener("change", function(){
    var textbox = this, //reference the textbox
        value = this.value;  //get what the user typed
    document.getElementById("bar").innerHTML = value;  //set the value
});
<input type="text" id="foo" />
<div id="bar" />

现在,如果您想在用户输入时运行它,而不是使用keyup事件。