NET网页编程之在js中为SmartGrid设置核心单位格示例
因为各系统的API不同,代码调用API编写程序就会遇到很多不兼容的地方,比如Java改写后的Serv-U就不能在手机上执行,手机的游戏也不能直接在微机上执行。在SmartGrid教程(四):数据与行操纵中我们有讲到,在aspx页面(即我们普通讲的"前台")能够使用focus办法来为SmartGrid设置核心单位格,本章我们做个示例来演示一下:一,在页面增加一个SmartGrid,为复杂起见,我们只为SmartGrid创立一个列
<SmartWeb:SmartGridID="SmartGrid1"runat="server"ColumnSizeable="true"ColumnMovable="true"Height="200px"ReadOnly="false"DataKeyField="ID"Width="300px">
<Columns>
<SmartWeb:TextBoxColumnColumnName="A"HeaderText="A"/>
</Columns>
</SmartWeb:SmartGrid>
二,再在页面增加一个button,我们将完成点击该button,主动将SmartGrid的第二行的第一列设置为核心单位格,创立button的代码以下:
<inputtype="button"value="测试"/>
三,再创立f_focus办法
<scripttype="text/javascript"language="javascript">
functionf_focus(){
vargrid=document.getElementById("<%=this.SmartGrid1.ClientID%>");
grid.focus(1,"A");
}
</script>
下面的this.SmartGrid1.ClientID是猎取SmartGrid的客户端ID,不要觉得在js中就不克不及如许用,实际上是能够的。
四,在前面为SmartGrid绑定四行数据,以便做测试。
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
DataTabledt=newDataTable();
dt.Columns.Add("A");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
this.SmartGrid1.DataSource=dt;
this.SmartGrid1.DataBind();
}
}
OK,一切测试代码终了,实行页面,点击"测试"按钮,光标定位到第二行第一列,以下图,申明测试乐成。
一切aspx页面测试代码以下:
<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="Demo._Default"%>
<%@RegisterAssembly="Smart.Web.UI.WebControls.SmartGrid"Namespace="Smart.Web.UI.WebControls"
TagPrefix="SmartWeb"%>
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title></title>
<scripttype="text/javascript"language="javascript">
functionf_focus(){
vargrid=document.getElementById("<%=this.SmartGrid1.ClientID%>");
grid.focus(1,"A");
}
</script>
</head>
<body>
<formid="form1"runat="server">
<SmartWeb:SmartGridID="SmartGrid1"runat="server"ColumnSizeable="true"ColumnMovable="true"
Height="200px"ReadOnly="false"DataKeyField="ID"Width="300px">
<Columns>
<SmartWeb:TextBoxColumnColumnName="A"HeaderText="A"/>
</Columns>
</SmartWeb:SmartGrid>
<inputtype="button"value="测试"/>
</form>
</body>
</html>
一切cs页面测试代码以下:
usingSystem;
usingSystem.Data;
namespaceDemo
{
publicpartialclass_Default:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
DataTabledt=newDataTable();
dt.Columns.Add("A");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
dt.Rows.Add("");
this.SmartGrid1.DataSource=dt;
this.SmartGrid1.DataBind();
}
}
}
}
我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。 在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。 现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点——平台无关性,也就是所谓的“一次编写,随处运行(WORA–WriteOnce,RunAnywhere)”。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。 现在主流的网站开发语言无外乎asp、php、asp.net、jsp等。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
页:
[1]