0

我正在尝试创建一个有时间延迟的提示,然后将在提示中写入的值用于表单的其他区域。我已经编写了一些 javascript 编码,但我相信我做错了一件小事,因为目前提示和延迟正在工作,但是因为正在使用 setTimeout 函数,这就是表单中显示的内容,而不是提示的内容。这是我的Javascript?

var name = setTimeout(function(){ prompt("What is your name?", "Type your full name here")},750); 
document.write("Document Written By: " + name + " (" + day + "/" + month + "/" + year + ") ")
4

1 回答 1

4

如果它取决于值,并且函数是异步的,那么您必须在回调中执行此操作。就像所有其他异步 JavaScript 一样......

setTimeout(function(){
    name = prompt("What is your name?", "Type your full name here");
    document.write("Document Written By: " + name + " (" + day + "/" + month + "/" + year + ") ");
},750);

但正如@Jon 评论的那样,请不要使用document.write.

于 2013-02-11T23:03:18.153 回答