none
ASP.NET 调用方法原理 RRS feed

  • 问题

  • 拖入  <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click1" />

    后台生产事件  protected void Button1_Click1(object sender, EventArgs e){}

    浏览网页HTML页面生成 <input type ="submit" name ="Button1" value ="Button" id ="Button1" / >

    当我点击 这个提交按钮的时候 他就能调用到 后台的Button1_Click1 方法.

    但是 我就是个纯 HTML 文件 里面有个<input type ="submit" name ="Button1" value ="Button" id ="Button1" / >

    如何能直接调用后台的 Button1_Click1 方法?


    http://tell5.net
    2010年8月18日 8:05

答案

  •  <form name="form1" method="post" action="Default.aspx" id="form1">
        <div>
            <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMjA0OTM4MTAwNGRk" />
        </div>
        <div>
            <input type="submit" name="Button1" value="Button" id="Button1" />
        </div>
        </form>

    VIEWSTATE有个记录,是必须的,不知道是什么东西,大概是记录后台事件名称之类的?求解答

    然后submit提交整个from1表单到Default.aspx

    其他关于客户端触发服务器端事件可以参照

    http://www.cnblogs.com/kklt2002/archive/2008/10/12/1309049.html

    • 已标记为答案 龙人 2010年8月19日 2:56
    2010年8月18日 13:43

全部回复

  •  <form name="form1" method="post" action="Default.aspx" id="form1">
        <div>
            <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMjA0OTM4MTAwNGRk" />
        </div>
        <div>
            <input type="submit" name="Button1" value="Button" id="Button1" />
        </div>
        </form>

    VIEWSTATE有个记录,是必须的,不知道是什么东西,大概是记录后台事件名称之类的?求解答

    然后submit提交整个from1表单到Default.aspx

    其他关于客户端触发服务器端事件可以参照

    http://www.cnblogs.com/kklt2002/archive/2008/10/12/1309049.html

    • 已标记为答案 龙人 2010年8月19日 2:56
    2010年8月18日 13:43
  • http://www.cnblogs.com/kklt2002/archive/2008/10/12/1309049.html  这个地址不错,谢谢了

    http://tell5.net
    2010年8月19日 2:55
  • 我认为有两种方法,第一种就是通常的把HTML控件转换成服务器控件的方法,只需要添加属性ranat即可  如<input type ="submit" name ="Button1" value ="Button" id ="Button1"  runat="server" / > 而且这种方法比较简单

     

    第二种方法稍微复杂一点 利用JS触发服务器段事件

    document.getElementById(按钮控件id).click(); // ie

    //FF,CHROME

      var btn=document.getElementById(update);
            var ev = document.createEvent("MouseEvents");
            ev.initEvent("click",true,true);
            btn.dispatchEvent(ev);

    但不管怎么样,后台还是需要指定点击按钮的click事件,也就是你所说的Button1_Click1

     

    如果还是不明白请看一下http://social.microsoft.com/Forums/zh-CN/295/thread/5a315548-ffc8-4663-93e3-6612e344f2d7文章就是利用js触发服务器事件的

    希望对你有所帮助

    • 已建议为答案 jinwb1982 2010年8月19日 3:21
    2010年8月19日 3:01