【问题标题】:javascript .net webmethod not executingjavascript .net webmethod未执行
【发布时间】:2015-12-02 20:53:46
【问题描述】:

所以我的 .NET 应用程序中的 javascript 出现问题。

function koniec() {
  try {
    var name = document.getElementById('Label4').textContent;
  } catch (err) {
    name = '1';
  }
  PageMethods.UpdateItem(name);
  //alert('session ended !');
}

所以我的 webmethod 仅在我的 alert 未注释行时才会执行。否则它甚至不会触发。

<body onbeforeunload="koniec()" >

它应该在没有警报功能的情况下执行。

【问题讨论】:

  • 你需要检查是否有任何东西导致 javascript 抛出错误。

标签: javascript jquery .net webmethod


【解决方案1】:

你定义了 ScriptManager 吗?

如果没有,请尝试将其添加到“body”标签之后,如下所示:

<body onbeforeunload="koniec()">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
</asp:ScriptManager>

问候, 阿比特

【讨论】:

    【解决方案2】:

    是的,EnablePageMethods 设置为 true。正如我之前所说,当 alert('session ended !'); 未注释时,webmethod 正在运行

    【讨论】:

      【解决方案3】:

      它对我有用,警报不影响页面方法的调用。

      尝试用下面的代码替换你的 JS 函数:

      function koniec() {
                  try {
                      var name = document.getElementById('Label4').textContent;
                  }
                  catch (err) {
                      name = '1';
                  }
                  PageMethods.UpdateItem(name);
                  function OnSuccess(response) {
                      alert(response);
                  }
                  function OnError(error) {
                      alert(error);
                  }
              }

      问候,

      阿比特

      【讨论】:

        猜你喜欢
        • 2011-09-05
        • 2013-01-18
        • 2021-04-30
        • 2017-02-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-18
        • 2014-12-14
        相关资源
        最近更新 更多