這似乎應該是相對直接的,我無法弄清楚我做錯了什麼。我需要通過文本框從用戶輸入(用戶名),將其設置爲一個變量,並將其顯示在頁面上。我不斷收到「未定義」而不是用戶名。從用戶輸入寫入一個javascript變量到文檔
這是一個精簡版。這將顯示一個覆蓋整個頁面的Div,其中包含用於輸入用戶名稱的輸入。當用戶點擊提交時,div消失,名稱被設置爲一個變量。我留下了表格處理功能,以防與問題相關。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE>HOME</TITLE>
</HEAD>
<BODY>
<CENTER>
<BR />
<FONT COLOR="RED" FACE="ARIAL BOLD" SIZE="5">test</FONT>
<BR />
<script language="javascript">
var currentTime = new Date();
var month = currentTime.getMonth() + 1;
var day = currentTime.getDate();
var year = currentTime.getFullYear();
var name = uservariable;
function setName(){
uservariable = document.forms["username"]["user"].value;
var ele = document.getElementById("nameInput");
if(ele.style.display == "none") {
ele.style.display = "block";
}
else {
ele.style.display = "none";
}
document.getElementById('element_7').value = uservariable;
}
function validateForm()
{
var x=document.forms["username"]["user"].value;
if (x==null || x=="")
{
alert("Rembrandt's first name was Beauregard, what is yours?");
}
else
{
setName()
}
}
</script>
<DIV id="nameInput" STYLE="background-color:#ccc;position:fixed;width:100%;height:100%;top:0px;left:0px;z-index:1000;display:block;">
<br /><br /><FONT FACE="ARIAL BOLD" SIZE="3">First Name:</font><br />
<form name="username" action="javascript:validateForm()">
<input type="text" name="user" value="" size="20"><br>
<input type="submit" value="Start Shift">
</form>
</div>
<script language="javascript">
document.write(name + "s LEADS SUBMITTED FOR " + month + "/" + day + "/" + year + ":</B>");
</script>
</center></td></tr></table>
</div>
</CENTER>
</BODY>
</HTML>
的'document.write'調用發生時,第一次加載頁面。 'name'只能分配給'uservariable',這個時候是不確定的。您應該通過適當的調試程序逐步完成代碼。 –
@MattBall用正常的ASCII名稱來看你。 –