试图阻止这段代码在网页加载时运行。Javascript onload MVC ASP .NET MVC
<input type="submit" class="btn btn-info col-md-pull-4" value="Download" id="mybutton" onclick="myFunction">
<script type="text/javascript">
function myFunction() {
document.getElementById("mybutton") = @api.function();
}
</script>
每当我加载页面,这连接到web api并启动api.function代码。我只想在点击按钮时发生这种情况。
我该怎么做呢?
我不认为你包括了你所有的代码,因为只有当你点击你发布的按钮时才会调用该函数。如果你想知道什么是调用它,那么在执行时查看堆栈跟踪。为此,在函数中添加一行并编写'debugger;',然后在开发人员/调试工具打开的情况下将页面加载到选择的浏览器中,该工具应当停止脚本执行。然后查看堆栈跟踪并找出正在进行的调用。 – Igor
另外我/我们不知道'@ api.function()'做了什么,你确定调用api不是从服务器而是从客户端创建的吗? – Igor
问题是服务器端代码运行时调用服务器端代码'@ api.function()'。 看看浏览器中的源代码(打开页面,查看源代码) - 你会发现'@ api.function()'的结果被嵌入到源代码中。 –