zoukankan      html  css  js  c++  java
  • 前台如何调用后台事件

         网上一般说:__doPostBack('Button1','')就可以了,但有一个问题,运行时总是提示“缺少对象”(脚本错误)。

         原因:“NET 生成javascript的 __doPostBack()函数是有条件的,当页面上存在一个或一个以上的LINKBUTTON的时候才会有这个函数,所以,如果页面上没有LINKBUTTON 只有BUTTON的时候会出现‘缺少对象’的JS错误提示

    为此我写了第三种调用方法

    <form id="form1" runat="server">

        <div>
           <%--

             第一种方法添加LinkButton
            <asp:LinkButton ID="linkButton" runat="server"></asp:LinkButton>
            <asp:TextBox ID="textBox" runat="server"></asp:TextBox>
            <asp:Button ID="button" runat="server" Text="JsInvokeButton" OnClick="button_Click" />
            --%>
        </div>
        <div>
           <%--

            第二种方法直接使用getElementById
            <asp:TextBox ID="textBox1" runat="server"></asp:TextBox>
            <asp:Button ID="button1" runat="server" Text="JsInvokeButton2" OnClick="button1_Click" />
            --%>
        </div>
        <div>
            <%--

            第三种方法使用GetPostBackEventReference
            <asp:TextBox ID="textBox2" runat="server"></asp:TextBox>
            <asp:Button ID="button2" runat="server" Text="JsInvokeButton3" OnClick="button2_Click" />
            --%>
        </div>

       </form>

           protected void Page_Load(object sender, EventArgs e)
           {

               //第一种方法
               textBox.Attributes.Add("onclick", "javascript:__doPostBack('button','')");

               //第二种方法          

               textBox1.Attributes.Add("onclick", "document.getElementById('button1').click()");

               //第三种方法          

               textBox2.Attributes.Add("onclick", "javascript:__doPostBack('button2','')");
               ClientScript.GetPostBackEventReference(textBox2,"");
           }

           protected void button_Click(object sender, EventArgs e)
           {

           }

           protected void button1_Click(object sender, EventArgs e)
           {

           }

           protected void button2_Click(object sender, EventArgs e)
           {

           }

  • 相关阅读:
    JS中prototype属性解释及常用方法
    HTML5 组件Canvas实现图像灰度化
    洛谷.5284.[十二省联考2019]字符串问题(后缀自动机 拓扑 DP)
    洛谷.5290.[十二省联考2019]春节十二响(贪心)
    洛谷.5283.[十二省联考2019]异或粽子(可持久化Trie 堆)
    SDOI2019 省选前模板整理
    完美理论(最大权闭合子图)
    BZOJ.3566.[SHOI2014]概率充电器(概率DP 树形DP)
    BZOJ.2616.SPOJ PERIODNI(笛卡尔树 树形DP)
    4.2模拟赛 wormhole(期望DP Dijkstra)
  • 原文地址:https://www.cnblogs.com/RuiLei/p/1454524.html
Copyright © 2011-2022 走看看