Ajax使用的好处是访问服务器数据,而页面不跳转,让用户感觉访问的是静态页面。
一、必须注册控件:AjaxPro.2.dll,当前测试的版本号:[6.5.9.1 ]
1.在命令行注册:regsvr32 d:/project/OA/bin/AjaxPro.2.dll
2.在项目是引用 "AjaxPro.2”
二、程序中需要加的代码,以C#为例:
1.在Page_Load加代码:AjaxPro.Utility.RegisterTypeForAjax(typeof(aspx页面名称))
2.在访问数据库数据字典前一行加代码:[AjaxPro.AjaxMethod]
具体如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGrid();
}
AjaxPro.Utility.RegisterTypeForAjax(typeof(Attemper));
}
[AjaxPro.AjaxMethod]
public String GetEmplName(String person_no)
{
if (person_no == "")
{
return "";
}
person person;
String ret = "test";
person = personBll.GetModel(person_no);
if (person != null)
{
ret = person.person_name;
}
else
{
ret = "员工不存在";
}
return ret;
}
三、在aspx页面的html代码加javascript脚本,写函数
<script type="text/javascript">
function showEmplname()
{
var name = document.getElementById('txtDriver_person_name');
var person_no = document.getElementById('txtDriver_person_no');
name.value =OA.car.Attemper.GetEmplName(person_no.value.toString()).value;
}
</script>
四、事件调用上面函数;
比如通过员工工号,取得员工作姓名,那么就要在输入工号时自动跳出姓名,而且页面不会跳转
onblur事件调用showEmplname()函数
<td class="style1">
<input id="txtDriver_person_no" type="text" onblur="showEmplname();" runat="server" /> 姓名<input
id="txtDriver_person_name" type="text" runat="server" readonly="readonly" /></td>
<td align="right">