一、前台调用后台
1、前台调用后台变量(注:数组变量不能获得,需先在后台已分隔符转成字符串变量,前台得到后再处理成数组)
后台页面提供一个全局变量,Page_Load中给赋值,前台使用<%=XXX %>来获得变量;
2、前台调用后台方法(即Ajax,见Jquery,绑定到按钮的Click)
二、后台调用前台
1、后台使用前台的变量
方法一:
1、前台使用静态文本控件隐藏域,将js变量值写入其中;
2、后台用request["id"]来获取值;
方法二:可以用cookie或session2、
后台使用前台函数
(1)用ClientScript类动态添加脚本(较好)
前台:
function closeWindow() {....}
后台: ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "");
(2)OnClientClick
client_click() 就是javascript的一个方法,先执行client_click();
(3)Button1.Attributes.Add("onclick", "return Client_Click()");
“Client_Click() “是一个前台方法,可以替换成一般的脚本如:retrun confirm('确定删除吗?')
后台
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
public int[] nums=new int[5]{1,2,3,4,5,};
public int age = 29;
public string strs = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
strs = string.Join("|||", nums);
}
}
}
前台
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
var num='<%= strs%>';
alert(num);
alert(<%= age%>);
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>