【问题标题】:Html.ActionLink onclick JavaScript function is not invoked and name of function is corrupted in output HTML未调用 Html.ActionLink onclick JavaScript 函数,并且输出 HTML 中的函数名称已损坏
【发布时间】:2014-09-06 18:26:50
【问题描述】:

我查看了其他问题:how to call javascript function in html.actionlink in asp.net mvc? 展示了如何将 onclick 添加到 @Html.ActionLink 但在我的情况下,我分配给 onclick 的函数从未被调用。

我尝试了这些操作链接:

<p>@Html.ActionLink("Call number", "Call", new { id = Model.Id, number = Model.CellNumber, onclick = "javascript:alert(a);" }, new { @class = "btn btn-default" })</p>
<p> @Html.ActionLink("Call number »", "Call", new { id = Model.Id, number = Model.SecondaryPhoneNumber, onclick = "javascript:Call();" }, new { @class = "btn btn-default" })</p>

函数看起来像:

<script>
    function Call(){
        alert("BLA");
    }
</script>

但在这两种情况下(第一个和第二个按钮)都没有显示警报。除了那个动作链接还可以。

问题:我做错了什么?

编辑:

html 中的操作链接看起来像这样并且看起来已损坏:onclick=Call%28%29%3B

<p><a class="btn btn-default" href="/Person/Call/7?number=113-456-789&amp;onclick=alert%28a%29%3B">Call Cell Phone</a></p>
<p> <a class="btn btn-default" href="/Person/Call/7?number=98873213&amp;onclick=Call%28%29%3B">Call Client&#39;s Secondary Number &#187;</a></p>

这个函数看起来应该是这样的:

<script>
    function Call(){
        alert("BLA");
    }    
</script>

【问题讨论】:

  • 您不需要将 javascript: 添加到 onclick。您只会对链接上的 href 目标执行此操作。例如onclick="Call()"href="javascript:Call()"。您可以在 [stackoverflow.com/questions/2856071/… 的回答中看到这一点
  • @Rhumborl 这是我在这里提出问题之前使用的答案,但没有奏效。请查看我的编辑,看起来 html 浏览器看到的内容如下:onclick=Call%28%29%3B
  • @JLRishe 我在 OP 底部的 EDIT 中发布了 HTML,似乎函数名称在那里已损坏。在我在这里提问之前,我添加了指向我用来解决问题的答案的链接。

标签: javascript html asp.net-mvc razor


【解决方案1】:

您在错误的位置添加了 onclick 处理程序。您必须将其放入 Html Attributes 块而不是 Route values。 试试看:

<p>@Html.ActionLink("Call number", "Call", new { id = Model.Id, number = Model.CellNumber }, new { @class = "btn btn-default", onclick = "alert('a');" })</p>

【讨论】:

    猜你喜欢
    • 2014-08-15
    • 2023-03-18
    • 1970-01-01
    • 2016-03-18
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 2015-03-20
    • 2013-12-10
    相关资源
    最近更新 更多