HTML控件如何才能调用到后台的方法??
页面上有个<input type="button">控件,如何才能在后台.cs代码页面写这个控件的ServerClick方法啊? --------------------编程问答-------------------- <input type="button" runat="server" id="btn01" onclick="btn10_Click">cs:
protected void btn10_Click_Click(object sender, EventArgs e)
{
} --------------------编程问答-------------------- 楼上的瞎讲 --------------------编程问答-------------------- AJAX
楼主首先下载Ajax.NET Professional
1添加引用 AjaxPro
2配置Web.config
<system.web>
<httpHandlers>
<add verb= "POST,GET " path= "ajaxpro/*.ashx " type= "AjaxPro.AjaxHandlerFactory,AjaxPro.2 "/>
</httpHandlers>
</system.web>
3修改服务端方法,使用[AjaxPro.AjaxMethos]进行申明
4在相应的CS文件中的Page_Load方法中注册客户端JS要调用Ajax方法
AjaxPro.Utility.RegisterTypeForAjax(typeof(类名));
--------------------编程问答-------------------- 2楼的不行呀,我是要调用后台的ServerClick方法 --------------------编程问答-------------------- <input type="button" runat="server" id="btn01" onserverclick="btn10_Click">
我记得是这样。 --------------------编程问答-------------------- --------------------编程问答-------------------- 呵呵,上次有高人教我个方法:
对于
<asp:PlaceHolder ID="PlaceHolder1" runat="server">
<input type="button" id="abc" runat="server" value="Click Me" />
</asp:PlaceHolder>
你可以在后台Page_Load或者Page_PreRender等事件中设置断点,然后调试或者打印
this.PlaceHolder1.Controls.Count可以看到它是一个 HtmlInputButton 类型的控件。然后你就可以根据这类控件的定义去写代码。例如从类型定义上看显然,它支持ServerClick事件,所以你可以在声明时在事件名前边加上“on”(这是asp.net编译器默认的机制),成为:HTML code
this.PlaceHolder1.Controls[0].GetType().Name
<asp:PlaceHolder ID="PlaceHolder1" runat="server">
<input type="button" id="abc" runat="server" value="Click Me" onserverclick="abc_clicked" />
</asp:PlaceHolder>
protected void abc_clicked(object sender, EventArgs e)--------------------编程问答-------------------- 只能用ajax 实现 --------------------编程问答-------------------- 有办法的,我记得是丢一个服务器的button,然后给他设置某个属性,然后再丢一个html控件,具体你百度一下就知道了 --------------------编程问答--------------------
{
。。。。。。
}
这个和小虎的好用,楼主速来结贴。 --------------------编程问答-------------------- 1.添加ajaxPro 的引用 (我资源上有,ajaxPro)
2.在<system.web>配置节点下添加
<httpHandlers>
<add verb="*" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro"/>
</httpHandlers>
3。在Page_load事件下添加
AjaxPro.Utility.RegisterTypeForAjax(typeof(_drag2));
_drag2是当前页的默认生成的类,如有文件夹,像wwf_drag最好将wwf去掉
4。前台调用后台函数
前台
_drag2.del(id).value;
后台
[AjaxPro.AjaxMethod]
public string del(string str)
{
。。。。。。。。。。。
}
就OK了!!!
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wwfgu00ing/archive/2010/07/08/5721175.aspx --------------------编程问答-------------------- 二楼的瞎讲,都说了是html控件, 除非用ajax,否则不能再后台写方法 --------------------编程问答-------------------- 必须runat="server" 然后onclick事件里边调用。 --------------------编程问答-------------------- 拖一个 ScriptManager 设置 EnablePageMethods="true" 然后
按钮的点击事件的方法用js或jquery写
<input type="button" id="btn01" onclick="btn10_Click">
比如说
$(document).ready(function(){
$("#.btn01").click(function(){
//aa是后台方法的参数,没有则不写
PageMethods.后台方法名(aa,function(data){
alert(data);//data就是返回的值
})
})
});
后台代码的方法就是按钮需要处理的方法
方法需要加入特性[System.Web.Services.WebMethod]
方法必须是静态的static --------------------编程问答-------------------- 还是不懂,html控件到底怎么在后台写代码呀?
补充:.NET技术 , ASP.NET