zoukankan      html  css  js  c++  java
  • Asp.Net前台调用后台变量

    1.Asp.Net中几种相似的标记符号: < %=...%>< %#... %>< % %>< %@ %>解释及用法

    答: < %#... %>: 是在绑定控件DataBind()方法执行时被执行,用于数据绑定

    如: < %# Container.DataItem("tit") %>

    < %= %>: 在程序执行时被调用,可以显示后台变量值

    如:

    *.aspx中: < %= aaa %>

    *.cs中: protected string aaa="姓名";

    < % %>: 内联代码块里面可以在页面文件*.aspx或*.ascx文件里面嵌入后台代码

    如:

    < %

    for(int i=0;i<100;i++)

    {

    Reaponse.Write(i.ToString());

    }

    %>

    < %@ %>是在*.aspx页面前台代码导入命名空间,

    如:

    < %@ Import namespace="System.Data"%>

    2.控件接收哪些类型数据?

    答:接收Bind的控件,一般有 DropDownList,DataList,DataGrid,ListBox这些集合性质的控件,而被捆绑 的主要是ArrayList(数组),Hashtable(哈稀表),DataView(数据视图),DataReader这四个,以后我们就可以 对号入座,不会出现DataTable被捆绑的错误了:)

    3.DataBind,获得的数据,系统会将其默认为String,怎样转化为其它的类型?

    DataBinder.Eval(Container.DataItem,"转换的类型","格式")

    最后一个"格式"是可选的,一般不用去管他,Container.DataItem是捆绑的数据项,"转换类型"指的是 Integer,String,Boolean这一类东西.

    4.主要命名空间:

    < % @ Import Namespace="System.Data" %> 处理数据时用到

    < % @ Import Namespace="System.Data.ADO" % > 使用ADO.net ; 时用到

    < % @ Import Namespace="System.Data.SQL" %> SQL Server 数据库专用

    < % @ Import Namespace="System.Data.XML" %> 不用看处理XML用到

    < % @ Import Namespace="System.IO" %> 处理文件时用到

    < % @ Import Namespace="System.Web.Util" %> 发邮件时大家会用到

    < % @ Import Namespace="System.Text" %> 文本编码时用到

    5.截取字符

    写一个public的方法,用来截取字符串   
      如:   
          public   string   getSubString(string   str)   
          {   
                    if   (str.Length>10)   
                                  str=str.subString(0,10);   
                    return   str;   
      }   
    在aspx中代码如下   
                <td><%#   this.getSubString(DataBinder.Eval(Container.DataItem,"dd"))%></td>

     

    1  <%=%>  取后台变量或调用函数取返回值

          注意:服务器空间不可用

                     .cs页面的变量必须为protected /  public

     2  <%#%> 服务器控件取其后台所绑定的值

    一、前台调用后台
    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>

     
    ---------------------
    作者:简单的绿竹
    来源:CSDN
    原文:https://blog.csdn.net/zunguitiancheng/article/details/19298971
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    CSS盒子模型
    getContextPath、getServletPath、getRequestURI、request.getRealPath的区别
    MYSQL中的CASE WHEN END AS
    单点登录的精华总结
    git&github
    June 21st 2017 Week 25th Wednesday
    June 20th 2017 Week 25th Tuesday
    June 19th 2017 Week 25th Monday
    June 18th 2017 Week 25th Sunday
    June 17th 2017 Week 24th Saturday
  • 原文地址:https://www.cnblogs.com/qqhfeng/p/10367161.html
Copyright © 2011-2022 走看看