2

我该怎么做以上?

我真的不知道这样做的正确方法。

我尝试了以下方法:

var name;
function welcome(){
    name = prompt("Welcome, what is your name?","Enter name...");
    alert("Hello " + name + ". How are you today?");
    return name;
}

并且我希望能够在整个 HTML 文档中使用返回的名称值。

我试着把它放在脚本标签中:

var name = welcome();
alert(name);

警报不警报名称。该方法也是从 HTML 代码下方的按钮调用的:

<button class ="buttonlink"  onclick="'welcome()" >Function</button>

关于正确方法的任何建议都会很好:)

提前致谢!

4

1 回答 1

0

此代码存在命名空间冲突问题,当您在 HTML 页面上调用时name,外部文件中定义的内容会被 html 上的覆盖。有2个选项:namevar name

  • 快速修复:使用其他名称
  • 编写更好的代码:使用requireJS(Javascript 模块设计模式)

实际上,您的代码不会从外部文件返回 javascript 变量。您在 html 和外部文件中的代码位于同一命名空间(全局窗口)中。从外部文件返回变量只是一种错觉

于 2013-05-26T11:44:29.120 回答