|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了,datagridRequiredFieldValidator控件用来校验一个输出框中是不是输出了值,RegularExpressionValidator控件用来举行正则表达是的婚配。关于正则表达式的申明请参阅其他材料.
个中ControlToValidate属性就是必要校验的文本框的ID号.标签中的文本就是在校验不乐成的时分显现出来的提醒,Display属性则是提醒信息的显现体例.
DataGrid中<Columns>标签内的内容就是DataGrid的列了,列中还能够增加模版列,对应每模版列,能够有<ItemTemplate>,<EditItemTemplate>,<HeaderTemplate>,<FooterTemplate>几个标签,个中<ItemTemplate>就是DataGrid在一般显现的时分列的标签了,<EditTemplate>也就是在编纂形态中的DataGrid列的款式了.
在这些标签中我们能够拔出控件,然后在背景代码顶用DataGrid1.Item[i].FindControls(“ColtrolName”)能够对DataGrid中的控件举行操纵.
为了在DataGeid为编纂形态的时分把持DataGrid包括控件的形态,我们能够用CSS款式界说,将上面代码到场aspx文件的</head>和<Body>中,然后在<asp:TextBox>标签中到场CssClass=“myClass“便可改片控件的款式。(跟一般的办法没甚么区分啦,呵呵。)
<styletype="text/css">.myTextBox{BORDER-RIGHT:#0000001pxsolid;BORDER-TOP:#0000001pxsolid;FONT-SIZE:9pt;BORDER-LEFT:#0000001pxsolid;WIDTH:80px;BORDER-BOTTOM:#0000001pxsolid;HEIGHT:20px}
</style>
这里只给出了部分代码,如必要完全代码,请来信讨取。cheaper_c@sina.com
----------------------------------------------------------上面是运转时屏幕接图-----------------------------------------
------------------------------------------------部分背景代码---------------------------------------------------------
privatenewvoidDataBind()
{
DataBind("au_fname");
}
//重载DataBind()办法,便利DataGrid中举行排序
privatevoidDataBind(stringsortfield)
{
ds=newDataSet();
da=newSqlDataAdapter("SELECT*FROMauthors_new",conn);
da.Fill(ds,"authors");
DataViewsource=ds.Tables["authors"].DefaultView;
source.Sort=sortfield;
DataGrid1.DataSource=source;
DataGrid1.DataBind();
SqlDataAdapterddl_da=newSqlDataAdapter("SELECTDISTINCTstateFROMauthors_new",conn);
ddl_da.Fill(ddl_table);
RegClientScript();
}
//这段办法参照了vzxq兄的《在DataGrid页眉上增加全选的CheckBox控件》一文
//原文地点:http://blog.csdn.net/vzxq/archive/2004/09/13/103156.aspx
privatevoidRegClientScript()
{
//关于DataGrid1.Controls[0],人人能够参看vzxq兄的另外一篇文章
//http://blog.csdn.net/vzxq/archive/2004/09/13/103167.aspx
foreach(DataGridItemiteminDataGrid1.Controls[0].Controls)
{
if(item.ItemType==ListItemType.Header)
{
CheckBoxchkAll=(CheckBox)item.FindControl("ChkAll");
System.Text.StringBuilderstrScript=newSystem.Text.StringBuilder("<scriptlanguage=javascript>
");
strScript.Append("functioncheckStatus(){
");
strScript.Append("varbAll=true;
");
strScript.Append("bAll=document.all("+chkAll.ClientID+").checked;
");
for(inti=0;i<DataGrid1.Items.Count;i++)
{
strScript.Append("document.all("+DataGrid1.Items[i].Cells[0].FindControl("CheckBox1").ClientID+").checked=bAll;
");
}
strScript.Append("}
");
strScript.Append("</script>
");
if(!Page.IsClientScriptBlockRegistered("checkStatus"))
Page.RegisterClientScriptBlock("checkStatus",strScript.ToString());
chkAll.Attributes.Add("onclick","checkStatus()");
break;
}
}
}
//当点击”编纂”按钮的时分触发的服务器端函数
//起首将Panel的Visible属性设置为false,由于当DataGrid在编纂形态时单位格中的控件(如TextBox)会将DataGeid撑宽
//挤到我们增加纪录的panel就欠好看了.
publicvoidGrid_Edit(objectsender,System.Web.UI.WebControls.DataGridCommandEventArgse)
{
Panel1.Visible=false;
DataGrid1.EditItemIndex=(int)e.Item.ItemIndex;
DataBind();
System.Web.UI.WebControls.DropDownListddl_state=(DropDownList)DataGrid1.Items[(int)e.Item.ItemIndex].FindControl("edit_</p>缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。 |
|