本章主要讲述网页建设中C#代码与前台js实现交互的几种应用
[AjaxPro.AjaxMethod] public string GetUrl() { .... }3、最后前台直接调用就可以了,例如: var str = MyClass.GetUrl().value;
<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 onclick="SubmitKeyClick()" id="aaa" type="button"> <input type="hidden" name="FunName"> 〈!--用来存储你要调用的函数 --〉
public Page_OnLoad() { if (!Page.IsPost()) { string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";//根据传回来的值决定调用哪个函数 switch(strFunName) { case "enter()": enter() ; //调用该函数 break; case "其他": //调用其他函数 break; default: //调用默认函数 break; } } } public void enter() { //…… }
<input id="xx" type="hidden" runat="server">方法二:如后台定义了public;然后前台js中引用该变量的格式为‘<%=n%>‘或"+<%=n%>+"
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { unInclude = Request.QueryString["uninclude"]; //... } } private string unInclude { set { ViewState["unInclude"] = value; } get { if (ViewState["unInclude"] == null) return ""; return ViewState["unInclude"].ToString(); } }
Page.RegisterStartupScript("ggg","<script>SetVisible(1);</script>");方法二:使用Literal类,然后直接在后台写要调用的js函数名或者函数方法,例如:
private void Button2_Click(object sender, System.EventArgs e) { string str; str="<script language=‘javascript‘>"; str+="selectRange()"; str+="</script>"; //Literal1.Visible=true; Literal1.Text=str; }
不通过服务器控件时用前端javascript与c#后台交互的方法,布布扣,bubuko.com
不通过服务器控件时用前端javascript与c#后台交互的方法
原文:http://blog.csdn.net/jintougao/article/details/23252695