我在外部脚本中有我的Javascript,当文本字段填充文本然后按下回车按钮时我想要发生这种情况。当我按下回车键时,有人可以解释如何让这个工作正常,因为现在没有任何事情发生。感谢您的帮助。
另外,如何将文本从文本框传递到javascript函数。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title> All About Resistors </title>
<link rel="stylesheet" type="text/css" href="resistorpagestlying.css" />
<script type="text/javascript"
src="Value_to_Color.js">
</script>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<p>Resistor Value: <input type="text" onClick="print_text" id="test" value="Ohms"></p>
<button>Show Color Code</button>
</body>
</html>
这是javascript文件中的文字
function print_text(){
document.writeln("<b>Bold Hello World via an external js file!</b>");
}
答案 0 :(得分:0)
调用函数的语法是:
function_name()
你错过了parens。
因此:
print_text()
如果您希望在按下特定键时触发该功能,那么您也不希望使用单击,因为单击该元素时会触发该功能。
您需要使用keypress
事件,并在执行此操作时测试按下了哪个键。
我不知道如何找出onkeypress
属性中按下了哪个键,因为我没有使用内部事件属性。我们转到addEventListener
。
<input type="text" id="test" value="Ohms">
<script>
document.getElementById('test').addEventListener('keypress', function (event) {
var charCode = (typeof event.which == "number") ? event.which : event.keyCode
if (charCode === 13) { // 13 is Enter
print_text();
}
});
</script>
答案 1 :(得分:0)
我认为你正在寻找这个:
<p>Resistor Value: <input type="text" onkeypress="print_text();" id="test" value="Ohms"></p>
请注意print_text()
有()
,因为这是您正在调用的函数。其次,如果要在按Enter键时调用该函数,则需要将函数体更改为:
function print_text()
{
if (event.which == 13 || event.keyCode == 13) //enter key?
document.writeln('<b>Bold Hello World via an external js file!</b>');
}
而不是听“onclick”事件,你需要在文本字段上监听“onkeypress”事件。
JsFiddle在这里: