首页 > 解决方案 > 如何阻止 SAPUI5 按钮提交表单

问题描述

我有一个带有表格和按钮的简单 mytable.view.xml。该表只是表单中的一个,所有表都通过不同的 view.xml 处理。

<mvc:view>
     <l:VerticalLayout>
           //Code for table headers and table
     </l:VerticalLayout>
     <Button id="myButton" text="test" visible="true"  press="onMyButtonClicked"/>
</mvc:view>

控制器:

onMyButtonClicked: function(){
     window.location.href = "http://example.com/;
}

当我点击按钮时,onMyButtonClicked 被调用,但它被表单提交覆盖。由于没有处理此提交的逻辑,因此页面只是重新加载而不是导航到http://example.com/。在浏览器的开发人员工具中,我注意到导航到 example.com 被触发并被取消。我尝试并工作的一件事是检查浏览器上的这个按钮并onclick="return false;"在按钮标签中添加一个。但是从 sap.m.button 我不能这样做。尝试过 event.PreventDefault()。这也不起作用。

有没有其他方法可以阻止此按钮的行为类似于提交按钮?

标签: javascriptbuttonsapui5event-listener

解决方案


如果按下事件未绑定,则按钮不会触发任何内容。对于您的情况,为什么不将新闻事件绑定删除到回调?我错过了什么吗?UI5 按钮的行为与表单内“提交”类型的 HTML 按钮不同。


推荐阅读