我试图从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
然后返回它似乎都不起作用。
有人可以提供建议吗?
答案 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;
}
由于我不知道您的norm
和alphabet
无法为您提供准确的解决方案。
答案 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事件。