input text调用后台方法
<input type="text" id="pro" name="pro" runat="server" onblur="aa()" />
文本框失去焦点执行后台方法,这个aa()方法怎么调用后台方法???
我这个后台方法,是查询数据库然后给页面其它控件赋值,这些之前是下拉框的change事件里
现在把下拉框换成了文本框,想在失去焦点事件里写原来change事件里的代码,不知道怎么调用,请问该怎么实现??比较急,请大家帮忙
------解决方案--------------------前台
<input type="text" id="pro" name="pro" runat="server" onserverchange="pro_Change" />
后台
protected void pro_Change(object sender, EventArgs e)
{
}
这个他只有Enter后台事件,你可以使用Ajax请求或者使用AjaxPro.2框架来完成,这都是非常不错的选择
------解决方案--------------------方法一:
1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;
2、在前台写一个js函数,内容为document.getElementById("btn1").click();
3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;
方法二:
1、函数声明为public 后台代码(把public改成protected也可以)public string ss(){return("a");}2、在html里用<%=fucntion()%>可以调用前台脚本<script language=javascript>var a = "<%=ss()%>";alert(a);</script>
方法三:
1、<script language="javascript"><!--function __doPostBack(eventTarget, eventArgument){var theForm = document.Form1; //指runat=server的formtheForm.__EVENTTARGET.value = eventTarget;theFrom.__EVENTARGUMENT.value = eventArgument;theForm.submit();}--></script><input id="Button1" type="button" name="Button1" value="按钮" onclick="javascript:__doPostBack('Button1','')">方法四:<script language="javascript">function SubmitKeyClick(){if (event.keyCode == 13){event.cancelBubble = true;event.returnValue = false;document.all.FunName.value="你要调用的函数名";document.form[0].submit();}}</script><INPUT onkeypress="SubmitKeyClick()" id="aaa" type="text"><input type="hidden" name="FunName"> 〈!--用来存储你要调用的函数 --〉
------解决方案--------------------用一个Button1,绑定事件,属性设置 UseSubmitBehavior="False",
然后就可以这么用<input onblur="__doPostBack('Button1','')"
------解决方案--------------------有两个办法“执行所谓的后台方法”,其实就是用回调(通过postback),或者用ajax异步请求。
具体说就是在这个input 元素上某个事件处理函数中,submit页面,post回服务端,这样是有刷新的
或者就是在该处理函数中,用ajax方法请求服务端
------解决方案--------------------
++ 就用这个吧,
------解决方案--------------------
那就用JS 或者AJAX