Ajax使用心得
2005-12-21 09:39
519 查看
1、先在程序load的时候注册类到Ajax
如:private void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(BD0047)); //将类BD0047加到Ajax中
}
2、在要在前调用的方法前加 [AjaxMethod()]
如:[AjaxMethod()]
public int CountIssueDays(string strIssueDate,string strMaturityDate)
{
int retValue=0;
if(strIssueDate!="" && strMaturityDate!="")
{
string []strStartDate=new string[]{""};
string []strEndDate=new string[]{""};
//将日期分割成数组
int placeIssueDate=strIssueDate.IndexOf("-",0,strIssueDate.Length); //判断日期中是否有'-'号
int placeMaturityDate=strMaturityDate.IndexOf("-",0,strMaturityDate.Length); //判断日期中是否有'-'号
if(placeIssueDate==0)
{
strStartDate=new string[]{strIssueDate.Substring(0,4),strIssueDate.Substring(4,2),strIssueDate.Substring(6,2)};
}
else
{
strStartDate=strIssueDate.Split('-');
}
if(placeMaturityDate==0)
{
strEndDate=new string[]{strMaturityDate.Substring(0,4),strMaturityDate.Substring(4,2),strMaturityDate.Substring(6,2)};
}
else
{
strEndDate=strMaturityDate.Split('-');
}
TimeSpan tsIssueDays=new TimeSpan();
DateTime dtIssueDate=new DateTime(int.Parse(strStartDate[0]),int.Parse(strStartDate[1]),int.Parse(strStartDate[2]));
DateTime dtMaturityDate=new DateTime(int.Parse(strEndDate[0]),int.Parse(strEndDate[1]),int.Parse(strEndDate[2]));
tsIssueDays=dtMaturityDate-dtIssueDate;
retValue=tsIssueDays.Days + 1;
}
return retValue;
}
3、在HTML代码的最底部</Body>前加入JavaScript
var strIssueDays = document.getElementById("txtIssueDays_txtIssueDays_EditBox"); //发行天数
var strMaturityDate = document.getElementById("txtMaturityDate_txtMaturityDate_EditBox"); //到期日
var strIssueDate = document.getElementById("txtIssueDate_txtIssueDate_EditBox"); //发行日
获得页面上的控件的ID,以便把它的Value值传进要调用的方法中
4、在前台HTML中用JavaScript调用后台的方法
//计算发行天数 function CountIssueDays()
{
var returnIssueDays=BD0047.CountIssueDays(strIssueDate.value,strMaturityDate.value); strIssueDays.value=returnIssueDays.value;
}
5、再用下面语句触发事件执行Ajax去调用后台的方法
如
■先获得触发控件的ID
var strIssueDays = document.getElementById("txtIssueDays_txtIssueDays_EditBox"); //发行天数
var strMaturityDate = document.getElementById("txtMaturityDate_txtMaturityDate_EditBox"); //到期日
■触发计算发行天数事件
strIssueDate.attachEvent('onblur',function(){CountIssueDays();});
strMaturityDate.attachEvent('onblur',function(){CountIssueDays();});
■注意事项:
1、要在程序load的时候注册类到Ajax
2、要把Ajax引进程序中,再用Using Ajax把它引用进程序中
3、要在网站总目录下有一个Web.config配置文件
用文件编辑器打开它,
在里面的<system.web>下加入以下代码
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
</httpHandlers>
如:private void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(BD0047)); //将类BD0047加到Ajax中
}
2、在要在前调用的方法前加 [AjaxMethod()]
如:[AjaxMethod()]
public int CountIssueDays(string strIssueDate,string strMaturityDate)
{
int retValue=0;
if(strIssueDate!="" && strMaturityDate!="")
{
string []strStartDate=new string[]{""};
string []strEndDate=new string[]{""};
//将日期分割成数组
int placeIssueDate=strIssueDate.IndexOf("-",0,strIssueDate.Length); //判断日期中是否有'-'号
int placeMaturityDate=strMaturityDate.IndexOf("-",0,strMaturityDate.Length); //判断日期中是否有'-'号
if(placeIssueDate==0)
{
strStartDate=new string[]{strIssueDate.Substring(0,4),strIssueDate.Substring(4,2),strIssueDate.Substring(6,2)};
}
else
{
strStartDate=strIssueDate.Split('-');
}
if(placeMaturityDate==0)
{
strEndDate=new string[]{strMaturityDate.Substring(0,4),strMaturityDate.Substring(4,2),strMaturityDate.Substring(6,2)};
}
else
{
strEndDate=strMaturityDate.Split('-');
}
TimeSpan tsIssueDays=new TimeSpan();
DateTime dtIssueDate=new DateTime(int.Parse(strStartDate[0]),int.Parse(strStartDate[1]),int.Parse(strStartDate[2]));
DateTime dtMaturityDate=new DateTime(int.Parse(strEndDate[0]),int.Parse(strEndDate[1]),int.Parse(strEndDate[2]));
tsIssueDays=dtMaturityDate-dtIssueDate;
retValue=tsIssueDays.Days + 1;
}
return retValue;
}
3、在HTML代码的最底部</Body>前加入JavaScript
var strIssueDays = document.getElementById("txtIssueDays_txtIssueDays_EditBox"); //发行天数
var strMaturityDate = document.getElementById("txtMaturityDate_txtMaturityDate_EditBox"); //到期日
var strIssueDate = document.getElementById("txtIssueDate_txtIssueDate_EditBox"); //发行日
获得页面上的控件的ID,以便把它的Value值传进要调用的方法中
4、在前台HTML中用JavaScript调用后台的方法
//计算发行天数 function CountIssueDays()
{
var returnIssueDays=BD0047.CountIssueDays(strIssueDate.value,strMaturityDate.value); strIssueDays.value=returnIssueDays.value;
}
5、再用下面语句触发事件执行Ajax去调用后台的方法
如
■先获得触发控件的ID
var strIssueDays = document.getElementById("txtIssueDays_txtIssueDays_EditBox"); //发行天数
var strMaturityDate = document.getElementById("txtMaturityDate_txtMaturityDate_EditBox"); //到期日
■触发计算发行天数事件
strIssueDate.attachEvent('onblur',function(){CountIssueDays();});
strMaturityDate.attachEvent('onblur',function(){CountIssueDays();});
■注意事项:
1、要在程序load的时候注册类到Ajax
2、要把Ajax引进程序中,再用Using Ajax把它引用进程序中
3、要在网站总目录下有一个Web.config配置文件
用文件编辑器打开它,
在里面的<system.web>下加入以下代码
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
</httpHandlers>
相关文章推荐
- jquery-ajax-queue使用心得
- 使用ajaxfileupload的一点心得
- ajax控件fileupload控件使用心得
- 在struts2下使用jQuery的Ajax方法的一些心得
- ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
- ajax使用心得
- ajaxpro 的使用心得
- ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
- Ajax使用心得・整理
- 初次使用Ajax.net,总结下心得并记录下来
- ajax使用心得
- Ajax使用心得
- AJAX学习心得分享----(二)使用JQuery实现AJAX效果
- ajax 使用心得
- div隐藏层登录框及使用ajax写入cookies心得
- .Net MVC4 使用心得(四)分页、Partial View、删除、ajax返回
- ajax使用心得
- AjaxControlToolkit使用心得(一)——CollapsiblePanel
- Echarts使用心得---(1)AJAX
- AjaxPro使用心得