用AspJpeg组件,按宽高比例,真正生成缩略图

laifangsong's .NET blog

取长补短,精益求精。 (打个广告,想做手机网站和asp/asp.net网站的可以跟我联系.QQ:25313644)
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

二级联动.

Posted on 2006-03-20 00:42  laifangsong  阅读(926)  评论(1编辑  收藏  举报


BigClass
    
        表结构:
            
        测试数据:
                

SmallClass1

        表结构:
           
         测试数据:
            


aspx页面 : 

                        
       
aspx代码:

<%@ Page language="c#" Codebehind="liandong_two.aspx.cs" AutoEventWireup="false" Inherits="AspNetTest.Common.liandong_two" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
    
<HEAD>
        
<title>liandong_two</title>
        
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
        
<meta name="CODE_LANGUAGE" Content="C#">
        
<meta name="vs_defaultClientScript" content="JavaScript">
        
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
        
<script language="javascript">
        
function change()
        
{
            
var obj = document.Form1.DropDownList1;
            
if(obj.selectedIndex == 0)
            
{
                
return;
            }

            
var bigClassId = obj.options[obj.selectedIndex].value;
            
var obj = document.Form1.DropDownList2;
            obj.length 
= 0;
            obj.options[
0= new Option("=选择小类=""");
            
var len = 0;
            
for(var i=0; i<arrSmallClass.length; i++)
            
{
                
if(arrSmallClass[i][2== bigClassId)
                
{
                    obj.options[
++len] = new Option(arrSmallClass[i][1], arrSmallClass[i][0]);
                }

            }

        }

        
</script>
    
</HEAD>
    
<body MS_POSITIONING="GridLayout">
        
<form id="Form1" method="post" runat="server">
            
<asp:DropDownList id="DropDownList1" style="Z-INDEX: 101; LEFT: 64px; POSITION: absolute; TOP: 24px"
                runat
="server"></asp:DropDownList>
            
<asp:DropDownList id="DropDownList2" style="Z-INDEX: 102; LEFT: 160px; POSITION: absolute; TOP: 24px"
                runat
="server"></asp:DropDownList>
        
</form>
    
</body>
</HTML>


cs代码:

 1using System;
 2using System.Text;
 3using System.Collections;
 4using System.ComponentModel;
 5using System.Data;
 6using System.Data.SqlClient;
 7using System.Drawing;
 8using System.Web;
 9using System.Web.SessionState;
10using System.Web.UI;
11using System.Web.UI.WebControls;
12using System.Web.UI.HtmlControls;
13
14namespace AspNetTest.Common
15{
16    /// <summary>
17    /// liandong_two 的摘要说明。
18    /// </summary>

19    public class liandong_two : System.Web.UI.Page
20    {
21        protected System.Web.UI.WebControls.DropDownList DropDownList1;
22        protected System.Web.UI.WebControls.DropDownList DropDownList2;
23    
24        private void Page_Load(object sender, System.EventArgs e)
25        {
26
28                BindDDLCreateJsdArray();
29

30      
31            // 在此处放置用户代码以初始化页面
32        }

33        private void BindDDLCreateJsdArray()
34        {
35            string ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
36            SqlConnection conn = new SqlConnection(ConnectionString);
37            string sql = "select b.d_name as bname,b.d_id as bid,s.d_id as sid,s.d_name as sname  from SmallClass1 s join BigClass b on s.d_classid=b.d_id";
38            SqlCommand cmd = new SqlCommand(sql, conn);
39            conn.Open();            
40            SqlDataReader dr = cmd.ExecuteReader();
41            StringBuilder sb = new StringBuilder();
42            sb.Append("<script language=javascript>\n");
43            sb.Append("var arrSmallClass = new Array();\n");
44            ListItem lt = new ListItem("=选择大类=""");
                   DropDownList1.Items.Clear();
45            DropDownList1.Items.Add(lt);
46            lt = new ListItem("=选择小类=""");
47            DropDownList2.Items.Add(lt);
48            int i = 0;
49            int PreBigClassId = 0;
50            while(dr.Read())
51            {
52                string BigClassName = dr["bname"].ToString();
53                int BigClassId = Convert.ToInt32(dr["bid"].ToString());
54                string SmallClassName = dr["sname"].ToString();
55                int SmallClassID = Convert.ToInt32(dr["sid"].ToString());
56                lt = new ListItem(BigClassName, BigClassId.ToString());
57                if(BigClassId != PreBigClassId)
58                {
59                    DropDownList1.Items.Add(lt);
60                    PreBigClassId = BigClassId;
61                }

62                sb.Append("arrSmallClass["+ i +"] = new Array();\n");
63                sb.Append("arrSmallClass["+ i +"][0] = " + SmallClassID.ToString() + ";\n");
64                sb.Append("arrSmallClass["+ i +"][1] = \"" + SmallClassName + "\";\n");
65                sb.Append("arrSmallClass["+ i +"][2] = " + BigClassId + ";\n");
66                i++;
67            }

68            sb.Append("</script>");
69            Page.Response.Write(sb.ToString());
70            DropDownList1.Attributes.Add("onchange""change()");
71        }

72
73        Web 窗体设计器生成的代码
93    }

94}

95