PowerEngine AJAX API

PowerEngine AJAX API User Guide

 

一、约定

messageId: 用于显示错误信息,指向<span id="messageId"> </span>

clickObject:触发该调用的按钮

form0: 自动收集form数据后提交

url0: 若提供,则替换form0默认的Action

wait: 一般都填false

 

 

二、AJAX API说明

 

1. function PELoadContent(url0, myarray, id, messageId, callback, timeout )

 

   功能描述:通过数组提交数据,并将返回的流数据更新到指定区域.相当于以前的PELoadList.

   

   适用情形:用于装载一个动态列表或消息。注意与

post2SRVNoFoward/postData2SRVNoFoward的差别。

           post2SRVNoFoward/postData2SRVNoFoward一般用于服务端通过JSP返回的情形。

           PELoadContent一般配合PE AJAX Action使用,这些Action通过Stream返回。

   

   参数说明:

   

   url0: 目标交易码

   myarray: 交易数据

   id: 正常返回时内容显示的目标

   messageId: 出错时返回信息显示的目标。可省略或设为null,默认值与id相同。

   callback: 出错时的回调函数。可省略或设为null

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

   

   范例:

    var oparams = new Array(

    new Pair("ValidatorId", document.form1.ValidatorId.value),

    new Pair("Expression", "<c:out value="${Expression}"/>")

  );

      PELoadContent("ExprInput.do",oparams, "AAA");

2. function PEFreshContent( url0,item, id, messageId,callback, timeout)    不常用

   功能描述:item取得当前选择项的Name=Value对后提交.并将返回的流数据更新到指定区域.相当于以前的PEFreshList.

 

   适用情形:列表变化时,根据列表的当前选择值,动态装载另外的列表或动态消息。

 

   参数说明:item外,其他与PELoadContent相同。

 

3. function post2SRV(url0, form0, clickObject , messageId, callback, timeout)

   功能描述:将指定的Form提交,出现有效性检查错误时,将错误信息更新到当前页面的messageId指定的目标,其他情况返回结果页面。

   

   适用情形:提交表单到服务器,与普通提交类似。在出错时,当前页面不变。

   

   参数说明:

   url0: 目标交易码

   form0: 需提交的form

   clickObject: 该按钮将出现在提交数据中。并在提交过程中disabled

   messageId: 出错时返回信息显示的目标。

   callback: 出错时的回调函数。可省略或设为null

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

 

4. function postData2SRV(url0, postData , messageId, callback, timeout)

   功能描述:将指定的postData提交,出现有效性检查错误时,将错误信息更新到当前页面的messageId指定的目标,其他情况返回结果页面。

    

   适用情形:提交数据到服务器,与普通提交类似。在出错时,当前页面不变。

   

   参数说明:

   url0: 目标交易码

   postData: 需提交的数据

   messageId: 出错时返回信息显示的目标。

   callback: 出错时的回调函数。可省略或设为null

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

 

5. function post2SRVWithCallback(url0,form0, clickObject, callback,timeout)

 

   功能描述:将指定的Form提交,结果回调callback.

  

   适用情形:提交表单到服务器,当前页面不变。用于需对返回结果进一步处理的情形。

   

   参数说明:

   url0: 目标交易码

   form0: 需提交的form

   clickObject: 该按钮将出现在提交数据中。并在提交过程中disabled

   callback: 回调函数。不可省略!

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

   

   function mycallback(success, message)

   {

     //success: true or false

         alert(success);

        //success is true, then message为正常返回内容,可以为页面或流。

        //success is true, then message为出错信息

         alert(message);

   }   

 

6. function postData2SRVWithCallback(url0, postData, callback, timeout)

   

   功能描述:将指定的postData提交,结果回调callback.

 

   适用情形:提交数据到服务器,当前页面不变。用于需对返回结果进一步处理的情形。

   

   参数说明:  

   url0: 目标交易码

   postData: 需提交的数据

   callback: 回调函数。不可省略!

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

  

  

  

7. function postItem2SRVWithCallback(url0, item, callback, timeout)

   

   功能描述:item对应的域的FieldName=fieldValue提交,结果回调callback.

  

   适用情形:提交单一表单数据项的当前数据到服务器,当前页面不变。用于需对返回结果进一步处理的情形。

   

   参数说明:  

  

   url0: 目标交易码

   item: 需提交的数据域

   callback: 回调函数。不可省略!

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

 

 

8. function postArray2SRVWithCallback(url0, myarray, callback, timeout)

   

   功能描述:myarray提交,结果回调callback.

  

   适用情形:提交数组到服务器,当前页面不变。用于需对返回结果进一步处理的情形。

   

   参数说明:  

   url0: 目标交易码

   myarray: 需提交的数据域数组

   callback: 回调函数。不可省略!

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

   

 

9. function post2SRVNoFoward(url0, form0, clickObject, id, messageId,callback, timeout)

    

   功能描述:通过form提交,并将返回的流数据更新到指定区域.

   

   适用情形:提交表单到服务器,将返回结果局部刷性到当前页面的指定区域。

   

   参数说明:

   url0: 目标交易码

   form0: form

   clickObject: 该按钮将出现在提交数据中。并在提交过程中disabled

   id: 正常返回时内容显示的目标

   messageId: 出错时返回信息显示的目标。可省略或设为null,默认值与id相同。

   callback: 出错时的回调函数。可省略或设为null

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

 

10. function postData2SRVNoFoward(url0, postData , id, messageId,callback, timeout)

 

   功能描述:通过postData提交,并将返回的流数据更新到指定区域.

   

   适用情形:提交数据到服务器,将返回结果局部刷性到当前页面的指定区域。建议配合适用PEGetPostData等获取postData

   

   参数说明:

   

   url0: 目标交易码

   postData: 需提交数据

   clickObject: 该按钮将出现在提交数据中。并在提交过程中disabled

   id: 正常返回时内容显示的目标

   messageId: 出错时返回信息显示的目标。可省略或设为null,默认值与id相同。

   callback: 出错时的回调函数。可省略或设为null

   timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

 

11. function loadDCToken(tokenId, timeout)

 

功能描述:装载重复提交控制Token

 

     参数说明:

 

tokenId:指定的Hidden域名称。可省略或设为null,默认值为:_tokenName

timeout: 超时时间,建议省略或设为null。默认为30000毫秒。

 

范例:

 

function startup()

{

 loadDCToken(); //首次装载

}

 

function  doIt(clickObj)

{

    post2SRV('xxxx.do',document.form1,clickObj,'EEE',

function(flag, answer)

{

   loadDCToken(); //出错时,重装载

}

);

}

<pe:hidden fieldList="_tokenName" />

 

 

三、其他 API说明

 

 1. function PEGetFormData(form0, clickObject)

  

     功能描述:根据form及clickObject获取postData。

  

  

 2. function PEGetPostData(myarray)

     

     功能描述:将数组转成postData。

  

    

   范例:

   

  var myarray = new Array(

      new Pair("BankId", document.form1.BankId.value),

    new Pair("CifNo", document.form1.CifNo.value),

    new Pair("UserId", document.form1.UserId.value),

    new Pair("Password",document.form1.Password.value )

  );

  

   var result = PEGetPostData(myarray);

   

   result: BankId=xxx&CifNo=yyy&UserId=zzz&Password=ppp

   

   

 

 3. function PEGetItemData(item)

   

   功能描述:将一个域转成postData。

   

   范例:

   

   var result = PEGetItemData(form1.UserId);

   

   result: UserId=encoded_value

   

 

 4. function PEGetElement(id)

  

    功能描述:通过id获取HTML页面的Element。

 

 

四、范例

 

function  doIt(clickObj)

{

//post2SRV('login.do',clickObj.form,clickObj,'EEE', mycallback);

 var myarray = new Array(

      new Pair("BankId", document.form1.BankId.value),

    new Pair("CifNo", document.form1.CifNo.value),

    new Pair("UserId", document.form1.UserId.value),

    new Pair("Password",document.form1.Password.value )

  );

  

PELoadContent('login.do', myarray, 'EEE', 'EEE', mycallback);

    PEFreshContent( 'login.do',document.form1._vTokenName, 'EEE', 'EEE',mycallback);

post2SRVWithCallback('login.do',clickObj.form,clickObj, mycallback);

    postData2SRV('login.do', PEGetFormData(clickObj.form,clickObj) , 'EEE', mycallback);

postItem2SRVWithCallback('login.do', document.form1._vTokenName, mycallback);

post2SRVNoFoward('login.do',clickObj.form,clickObj, 'EEE', 'EEE',mycallback);

}

 

function mycallback(flag, answer)

{

   alert(answer);

   reloadTokenImg();

}

 

function reloadTokenImg(){

 

    document.forms[0]._tokenImg.src="GenTokenImg.do"+"?random="+Math.random();

}

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值