我对JavaScript相当陌生,我想知道是否有人可以帮助我解决这个问题。我有三个文本框,前两个显示名字和姓氏。我希望最后一个文本框同时包含第一个和最后一个。
这是代码:
<!doctype html>
<html>
<head>
<title>Javascript Textbox</title>
</head>
<body>
First Name: <input id="fname" type="text" value="John"><br>
Last Name: <input id="lname" type="text" value="Smith"><br>
<input id="textbox" readonly>
<button onclick="textbox.value=fname.value+' '+lname.value">press to see full name</button>
<script type="text/javascript" src="testing.js"></script>
</body>
</html>
这可以正常工作,但是当我尝试使用外部文件
testing.js
并切换onclick="testFunction()"
时,它将不再起作用。testing.js:
function testFunction() {
var first = document.getElementById("fname").value;
var last = document.getElementById("lname").value;
var textb = document.getElementById("textbox").value;
textb = first + " " + last;
}
最佳答案
http://jsfiddle.net/1vshky4s/
最终,您的问题是要为texb var分配文本框的值,然后使用串联字符串覆盖它,然后对结果完全不执行任何操作。
function testFunction()
{
var first = document.getElementById("fname").value;
var last = document.getElementById("lname").value;
var textb = first + " " + last;
document.getElementById("textbox").value = textb;
}
实际使用textb var做些事情,您应该一切顺利。检查小提琴。
关于javascript - 内联Javascript有效,但在外部不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27558049/