k Telerik 控件
*telerik:RadGrid
a:AllowPaging b. AllowCustomPaging c. AllowSorting d.PageSize e.AutoGenerateColumns f.GridLines g.ShowStatusBar 是否显示 telerik:RadToolBar h.AllowMultiRowSelection 允许多行选中 必写 否则只显示第一页 i. HorizontalAlign j.AllowScroll k. ShowFooter
l.VirtualItemCount:总数据条数 m.OnNeedDataSource 每次都走 n.EditMode="PopUp" 支持编辑弹出模式(弹出窗口) o.ClientSettings
<ClientSettings EnableRowHoverStyle="true">
<Scrolling AllowScroll="true" UseStaticHeaders="true" />
<Selecting AllowRowSelect="True" />
<ClientEvents OnRowDblClick="onRowDbClick" />
</ClientSettings> <Scrolling>→AllowScroll="true" RadGrid的滚动条 <Selecting>→AllowRowSelect=true 允许RadGrid行选中 <ClientEvents>→OnRowDblClick="onRowDbClick"
RadGrid中的行可以双击编辑 双击调用 function OnRowDblClick(){}
用a.写 PagerTextFormat 控制页面显示记录数例({}内写其它数字不可以):
b.<ClientSettings>
<Selecting AllowRowSelect="true" />
</ClientSettings>允许RadGrid内行被选中 C.添加序号列 <telerik:GridTemplateColumn HeaderText="序号列">
<ItemTemplate>
<%#System.Convert.ToInt32(DataBinder.Eval(Container,"ItemIndex"))+1 %>
</ItemTemplate>
</telerik:GridTemplateColumn> d. {4}共{5}:{4}和共之间有空格,否则报错
RadInputManager
1. 正则验证
目标控件是 Textbox <telerik:RadInputManager ID="RadInputManager1" runat="server">
<telerik:RegExpTextBoxSetting BehaviorID="RagExpBehavior1" ErrorMessage="" Validation-IsRequired="true"
ValidationExpression="[1-9]{0,}" Validation-ValidationGroup="Add">
<TargetControls>
<telerik:TargetInput ControlID="TextBoxCriticalStageOneStart"></telerik:TargetInput>
</TargetControls>
</telerik:RegExpTextBoxSetting> </telerik:RadInputManager>
telerik :k RadCodeBlock 用来写 s js 脚本;
例:
telerik:RadWindowManager
a.EnableShadow:阴影;
b.RestrictionZoneID: 3.telerik:RadWindow 弹出窗口
<telerik:RadWindowManager>→<Windows>→<telerik:RadWindow>→ <ContentTemplate>
a.AutoSize:自适应大小
b.ReloadOnShow:
c.ShowContentDuringLoad:
d.VisibleOnPageLoad:load 时显示窗口
e.Modal:
f.Behaviors:弹出窗口都有哪些操作例如大小化、关闭等
g.Title:
h.VisibleStatusbar:隐藏状态条 例:
调用方法:
RadChart
RadTreeView
a.控制节点的单击事件,可给节点的category赋不同的值来控制哪些节点事件,然后调用TadTreeView的OnClientNodeClicking="CheckForCancel",不能用OnClientNodeClicked会报js
错误 function CheckForCancel(sender, eventArgs) {
var treeNode = eventArgs.get_node();
if (treeNode.get_category() == "False") {
eventArgs.set_cancel(true);
}
} b. onnodeexpand="RadTreeView1_NodeExpand" 点击节点时加载子项 .telerik:RadNumericTextBox
只可输入数字 例:
ajaxToolkit:CascadingD ropDown
例:
telerik:RadAjaxManager
例:
7.Guid 唯一标识符 e WebService 中访问 session
在asmxmethod方法的上面加上 [WebMethod(EnableSession = true, Description = "")]表示在这个service 当中可以访问 session
r RadDateTimePicker 日期控件
<telerik:RadDateTimePicker ID="RadDateBirthday" runat="server"
MinDate="2009-01-09" ShowPopupOnFocus="true">
<DateInput BorderColor="Blue" DateFormat="yyyy-MM-dd">
</DateInput>
<Calendar runat="server" ID="calendar">
</Calendar>
<DatePopupButton runat="server" Visible="true" />
</telerik:RadDateTimePicker> a.ShowPopupOnFocus="true" 点击文本框时显示时间panel b.DateFormat 格式化时间
telerik:RadNumericTextBox
数字控件
当 type 为 Number 时 把 DecimalDigits修改为 0 后面就没有.00 了 11.分页 点击下一页后 再查询时 页数没在第一页 要把 CurrentPageIndex 设置为 0
例如:RadGrid1.CurrentPageIndex = 0; 13 编辑时给 DropDownList 绑定值 不能直接给 DropDownList 绑定要给CascadingDropDownList.SelectedValue 赋值 r RadDatePicker 计 算天数差方法
入院时间:
<telerik:RadDatePicker ID="RadDatePickerInHospitalDate" runat="server" ShowPopupOnFocus="true"
Width="154px" BorderColor="Gray">
<DateInput ID="DateInput1" runat="server" DateFormat="yyyy-MM-dd" Font-Size="12px">
</DateInput>
<DatePopupButton runat="server" Visible="false" />
<Calendar ID="calendar1" runat="server">
</Calendar>
<ClientEvents OnDateSelected="ValueChanged" />
</telerik:RadDatePicker>
出院时间:
<telerik:RadDatePicker ID="RadDatePickerLeaveHospitalData" runat="server"
ShowPopupOnFocus="true" Width="154px" BorderColor="Gray">
<DateInput ID="DateInput2" runat="server" DateFormat="yyyy-MM-dd" Font-Size="12px"
ValidationGroup="">
</DateInput>
<DatePopupButton runat="server" Visible="false" />
<Calendar ID="calendar2" runat="server">
</Calendar>
<ClientEvents OnDateSelected="ValueChanged" />
</telerik:RadDatePicker>
Js方法:
function ValueChanged(sender, args) {
var jsrq = document.getElementById("ctl00_ContentPlaceHolder1_RadDatePickerInHospitalDate").value; //入院
var ksrq = document.getElementById("ctl00_ContentPlaceHolder1_RadDatePickerLeaveHospitalData").value; //出院
var tmpBeginTime = new Date(jsrq.replace(/-/g, "\/"));
var tmpEndTime = new Date(ksrq.replace(/-/g, "\/"));
if (jsrq == "" || ksrq == "") {
document.getElementById("ctl00_ContentPlaceHolder1_RadTextBoxHospitalDays").value = 0;
}
else if (tmpEndTime <= tmpBeginTime) {
document.getElementById("ctl00_ContentPlaceHolder1_RadDatePickerLeaveHospitalData").value = "";
alert(""出院日期"必须大于等于"住院日期"!");
return false;
}
else {
//两个时间相减的差值
var ts = DateDiff(jsrq, ksrq);
document.getElementById("ctl00_ContentPlaceHolder1_RadTextBoxHospitalDays").value = ts;
return true;
}
}
//计算天数差的函数,通用
function DateDiff(sDate1, sDate2) {
//sDate1和sDate2是2002-12-18格式
var aDate, endDate, beginDate, iDays;
aDate = sDate1.split("-");
endDate = new Date(aDate[1] + "-" + aDate[2] + "-" + aDate[0]);
//转换为12-18-2002格式
aDate = sDate2.split("-");
beginDate = new Date(aDate[1] + "-" + aDate[2] + "-" + aDate[0]);
iDays = parseInt(Math.abs(endDate - beginDate) / 1000 / 60 / 60 / 24);
//把相差的毫秒数转换为天数
return iDays;
} 20
<div class="row">
<label>
*医疗证号:</label>
<telerik:RadNumericTextBox ID="a12" runat="server" Value="0.00" CssClass="text1"
MinValue="0.00" ValidationGroup="" Style="top: 1px;" DataType="System.Decimal"
MaxLength="8">
<NumberFormat ZeroPattern="n" GroupSeparator="" GroupSizes="2"></NumberFormat>
</telerik:RadNumericTextBox>
<asp:RequiredFieldValidator ID="Requiredfieldvalidator1" runat="server" ControlToValidate="a12"
ErrorMessage="<img src="\styles\images\notice.png" alt="必填"
class="error1" /> "
Display="Dynamic" SetFocusOnError="true" ValidationGroup="Add" />
</div> 22.时间相减(后台)
DateTime dtone = Convert.ToDateTime("2009-05-02
12:13:10"); DateTime dtwon = Convert.ToDateTime("2007-05-02
12:13:10""); TimeSpan sp = dtone.Subtract(dtwo); sp.Days sp.Hours sp.Minutes sp.seconds span.TotalDays 23.后台隐藏 div
div.Style.Add("display","none"); 24.Dropdownlist 避免值错误
this .DropDownList1.Items.FindByValu e(hc.Value);
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "mykey", "UpdateSaveHolds();", true); 当前触发该刷新代码的控件,包含在页面的 Updatadpanel
里边的时候
该语句无效。
修改为
RadAjaxManager manager = RadAjaxManager.GetCurrent(Page);
manager.ResponseScripts.Add(string.Format("CheckCompensation();", DateTime.Now.ToLongTimeString())); 24.时间相减
var inHospital=new TimeSpan(Convert.ToDateTime(this.RadDatePickerInHospitalDate.SelectedDate).Ticks);
var leaveHospital = new TimeSpan(Convert.ToDateTime(this.RadDatePickerLeaveHospitalDate.SelectedDate).Ticks);
this.TextBoxHospitalDay.Text = (leaveHospital.Subtract(inHospital).Days+1).ToString(); 25. Wcf是建立在.Net Framework 2.0上的,。WCF 可以支持的协议包括TCP,HTTP,跨进程以及自 26.定义,安全模式则包括 SAML,Kerberos,X509,用户/密码,自定义等多种标准与模式。WCF包含四种类型的契约:服务契约、数据契约、消息契约和错误契约
27.用了NeedDataSource 在 !IsPostBack()里就不用UpdatePaging(); LoadData();
28.p document.body.scrollTop 与 与 p document.documentElement.scrollTop 兼容
分类:
asp.net 2011-11-25 11:14841人阅读评论(4)收藏举报 document.body.scrollTop 与 document.documentElement.scrollTop 兼容 这两天在写一个 JS 的网页右键菜单,在实现菜单定位的时候发现了这个问题:chrome 居然不认识 document.documentElement.scrollTop!
看前辈们的文章,纷纷表示如果有文档声明(即网页第一句的 docType)的情况下,标准浏览器是只认识 documentElement.scrollTop 的,但 chrome 虽然我感觉比 firefox 还标准,但却不认识这个,在有文档声明时,chrome 也只认识 document.body.scrollTop. 由于在不同情况下,document.body.scrollTop 与 document.documentElement.scrollTop 都有可能取不到值,那到底网页的 scrollTop 值怎么得到呢?难道又要用 javascript 进行判断? 其实不必。因为 document.body.scrollTop 与 document.documentElement.scrollTop 两者有个特点,就是同时只会有一个值生效。比如 document.body.scrollTop 能取到值的时候,document.documentElement.scrollTop 就会始终为0;反之亦然。所以,如果要得到网页的真正的 scrollTop 值,可以这样:
var s...