JavaScript 切换方法未从 ASP 调用

问题描述 投票:0回答:1

注意这两个函数是相同的,只是名称不同:

以下片段位于

abc.js

function displayConfirmCreateDestinationOrOriginModal() {
    $('[id$=a]').css('display', 'block');
}

function toggleConfirmCreateDestinationOrOriginModal() {
    $('[id$=a]').css('display', 'block'); // I realise this is not toggling functionality, but that's not in question here/yet
}

以下片段均在

def.aspx
中:

    <script type="text/javascript" src="abc.js"></script>

不起作用:

  <button 
      id="a" 
      type="button"
      onclick="toggleConfirmCreateDestinationOrOriginModal()">Create New</button>

有效:

  <button 
      id="a" 
      type="button"
      onclick="displayConfirmCreateDestinationOrOriginModal()">Create New</button>

同样,如果我使用 asp:Button,同样的问题

不起作用:

 <asp:Button 
      id="a" 
      type="button"
      text="Create New"
      runat="server"
      onclick="toggleConfirmCreateDestinationOrOriginModal()" />

有效:

 <asp:Button 
      id="a" 
      type="button"
      text="Create New"
      runat="server"
      onclick="displayConfirmCreateDestinationOrOriginModal()" />

JavaScript 代码应该在两种情况下运行,从而进行模态显示。

我什至在每次尝试之前都进行了清理和重建。

我添加了所有这些代码,因此问题与其他内容无关:这都是新代码,只有 display* 方法有效。这种行为让我问:toggle* 是 JavaScript 或 asp 中的特殊词吗?

我对asp很陌生,想了解发生了什么,因为这种错误可能会导致我将来浪费很多时间,如果此类错误是出于我不明白的原因。

javascript asp.net
1个回答
0
投票

在使用类似的代码遇到类似的问题后,我怀疑这与 JavaScript 的缓存方式有关。我执行了清空缓存和硬刷新(在 Edge 中)。看来问题已经解决了。

© www.soinside.com 2019 - 2024. All rights reserved.