我正在学习SAP中的BSP框架。到目前为止,我已经成功地使我的MVC模型正常工作。
这是我的代码。
查看
<body>
<z:form>
<z:input binding="//c/counter"
invisible="true"/>
Counter : <z:write binding="//c/counter"/>
<z:button fcode="incr"
text="Increase"/>
<z:button fcode="decr"
text="decrease"/>
</z:form>
</body>
控制器
通过fcode,我在Controller中调用“fcode_incr”方法。
'c'是zcl_counter的模型实例。
它有一个属性计数器,将通过这种方法增加。
method fcode_incr.
c->increment( ).
endmethod.
我希望zcl_model很明显,其代码与此无关。
当我按下“增加”按钮时,服务器发送请求的问题。当它获得响应时,它会刷新页面。所以我得到增加的值。 如何使用Ajax使页面保持不刷新?
我已经尝试过使用“带有flowlogic的XML页面”的Ajax。 比如“Eventhandler - &gt; OnRequest”
request->get_form_field('variable').
它对任何进一步有帮助吗?
正确的 Ajax调用将是
$.ajax({
url:'ajaxController.do',
statusCode:{
404: function(){
alert("not found");
}
},
success: function(data){
$('#viewData').html(data);
}
}).error(function(){
alert("failed");
});
答案 0 :(得分:2)
此链接说明了详细信息:http://www.saptechnical.com/Tutorials/BSP/AJAX/create.htm
但是,实质上;
在您的bsp页面中集成一些javascript,以便您可以执行ajax,以下是一些选项:
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/themes/base/jquery-ui.css" type="text/css" />
您可以使用jQuery调用ajax调用,如下所示:http://api.jquery.com/jQuery.ajax/
在BSP项目中创建一个将从AJAX调用的控制器。
为您的控制器创建一个控制器类,只重新定义REQUEST并将您的逻辑放在那里
完成。