Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 来自内联和外部JS的不同结果”;“返回确认”;_Javascript_Html - Fatal编程技术网

Javascript 来自内联和外部JS的不同结果”;“返回确认”;

Javascript 来自内联和外部JS的不同结果”;“返回确认”;,javascript,html,Javascript,Html,我的web应用程序上有一个链接,需要用户确认链接的访问 所以这对我来说很好: <a href="/danger/" onclick="return confirm('Are you sure?');"> Danger (Inline JS)</a> mySite.html: function requestDangerConfirm(){ return confirm('Are you sure?'); } <a href="/danger/" oncl

我的web应用程序上有一个链接,需要用户确认链接的访问

所以这对我来说很好:

<a href="/danger/" onclick="return confirm('Are you sure?');"> Danger (Inline JS)</a>
mySite.html

function requestDangerConfirm(){
    return confirm('Are you sure?');
}
<a href="/danger/" onclick="requestDangerConfirm()"> Danger </a>
<script type="text/javascript" src="~/dangerConfirm.js'%}"></script>

我再次被提示进入警报框,但无论我选择什么,链接都会被访问


这有什么不同?如何用外部文件重现内联JS的行为?

您缺少
返回值。将单击事件更改为与之前相同的
onclick=“return requestDangerConfirm()”

如果
javascript
是内联或外部
javascript
文件。在
onclick
中没有返回。它们不会执行函数的决定

function requestDangerConfirm(){
返回确认(“您确定吗?”);
}

“但我想将所有内联JS移动到文件”,而不是为什么标记中仍然有一个
onclick
属性?:)这算是内联JS吗?它在标记中,所以是的,它是“内联的”-我有很多东西要学。谢谢!这就是问题所在。接下来的一个问题是:
返回的不是JS吗?有没有办法将JS代码完全移动到外部文件中?有。。您需要在Dom中使用
onclick()
,而不是使用标记。对吗?