javascript和webui的交互

I tried it but button.click() triggers onClientClick and not a server event. Try the below solution,

 

1. Assign a bsp:htmlbEvent.

<bsp:htmlbEvent name = "fireMyEvent"

                id   = "fireMyEvent"

                p1   = "p1"

                p2   = "p2" />

 

2. Assign a javascript function to button onClientClick event and trigger it through javascript.

 

<thtmlb:button id            = "mybutton"

                   text          = "Submit"

                   onClientClick = "upload_file( );" />

 

<scrpt language="javascrpt">

   var button = document.getElementById("<%= controller->component_id %>_mybutton");

   button.focus();

   button.click();

</scrpt>

 

3. Inside the function you can trigger server event using fireMyEvent(...)

<scrpt language="javascrpt">

function upload_file( )

{

....

....

return fireMyEvent('Submit');

}

</scrpt>

 

4. In event handler method EH_ONSERVEREVENT, proceed by checking htmlbEvent parameters,

lr_event ?= htmlb_event_ex.

IF lr_event->p1 EQ 'Submit'.

...

Endif.

 



http://scn.sap.com/message/9575994#9575994


http://wiki.scn.sap.com/wiki/display/CRM/CRM+WebClient+UI+-+Talking+with+Java+Script

http://www.cnblogs.com/sunrack/archive/2010/01/15/1648787.html



<%@extension name="htmlb" prefix="htmlb" %>
<bsp:htmlbEvent name = "fireMyEvent"
                id   = "fireMyEvent"
                p1   = "p1"
                p2   = "p2" />

<SCRIPT LANGUAGE="JavaScript">
function hotkey()
{
var a=window.event.keyCode;
if((a==65)&&(event.ctrlKey))
{
alert("你按了ctrl+a键吧");
return fireMyEvent('Submit');
}
}
document.onkeydown = hotkey;
</SCRIPT>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值