【问题标题】:How do I call javascript from asp.net button click?如何从 asp.net 按钮单击调用 javascript?
【发布时间】:2013-02-28 12:51:47
【问题描述】:

我正在使用 asp.net 并希望执行以下 javascript 代码。 我用的是VS2010。

   <title></title>
<script type="text/javascript">
    function myClosure() {
        var canyousee = "here I'm ";
        return (function theClosure() {
            return { canyouseeIt: canyousee ? "yes" : "no" };
        });
    }
    var closure = myClosure();
    closure().canyouseeIt;
</script>
</head>

<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="myClosure();" />
    </div>

如何在单击按钮时执行function myClosure(),以便它给我confirm,即yesno 的弹出窗口?

  1. confirm 需要输入哪个代码?
  2. 如何在Button Click 上执行它?

谢谢

【问题讨论】:

  • 那不是警报,那是确认
  • 我应该为此添加哪些代码?
  • confirm('this is a yes no question') 并返回布尔值

标签: javascript jquery asp.net ajax


【解决方案1】:

我希望这能有所帮助。 我必须承认,我不清楚你想要达到的目标。

<title></title>
<script type="text/javascript">
     myClosure=function() {
        var canyousee = "here I'm ";
        return (function () {
            return { canyouseeIt: function(){return confirm (canyousee)}};
        });
    }
</script>
</head>

<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="(myClosure())().canyouseeIt()" />
    </div>

【讨论】:

    【解决方案2】:
    <html>
    <head>
    <script type="text/javascript">
    function myClosure(){
              var r=confirm("Press a button!")
            if (r==true)
            {
                 alert("You pressed OK!")
                 return true;
            }
            else
            {
                  alert("You pressed Cancel!");
                  return false;
            }
    
    }
    </script>
    </head>
    
    <body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="myClosure();" />
    </div>
    </body>
    </html>
    

    【讨论】:

      【解决方案3】:

      使用

      onclientclick="javascript:return YourFunction();"
      
      <script> 
      function YourFunction() {
      //Do your stuff
      
      return true;
      }
      </script>
      

      如果您返回 true,您的 asp.new onclick 事件将被调用.. 如果你返回 false 它不会被调用..

      【讨论】:

        【解决方案4】:

        正如你所说的那样,但是通过在

        上返回 false 来阻止回帖
        OnClientClick="myClosure();return false;"
        

        我不知道你的其余逻辑,但这是你现在的问题。

        【讨论】:

        • 不适合我 :( 在我的逻辑中,我基本上是在尝试处理 javascript closure 概念。
        • @ashuthinks 当我说你的逻辑时,我的意思是你喜欢遵循的步骤。无论如何,检查其他 javascript 错误。就是这样
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-16
        • 2012-05-15
        • 1970-01-01
        • 1970-01-01
        • 2017-08-14
        • 1970-01-01
        • 2012-05-01
        相关资源
        最近更新 更多