【问题标题】:Custom Controls Event Handling in SAP UI5SAP UI5 中的自定义控件事件处理
【发布时间】:2017-12-15 16:42:09
【问题描述】:

在我的 SAP UI5 应用程序中,我希望创建一个类似于 http://jsfiddle.net/darkajax/MbR6c/ 的 3 状态切换开关

我有一个表格,表格的每一行都必须存在这些切换开关。

我想最好的方法是创建一个自定义控件并渲染它。它工作正常。但是,在单击任何切换开关状态时,我希望调用父控制器。我无法调用自定义控件的事件:

function(Control, Button) {
    return Control.extend("svm.customControl.toggleSwitch", {
        metadata: {
            properties: {
                A: {
                    type: "String"
                },
                B: {
                    type: "String"
                },
                C: {
                    type: "String"
                }
            },
            aggregations: {},
            events: {
                changes: {
                    enablePreventDefault: true
                }
            }
        },
renderer: function(oRm, oControl) {
    oRm.write(
    '<div class="switch-toggle switch-3 switch-candy"> 
        <input id=' + oControl.getA() + ' name="state_' + 
             oControl.getA() + '" type="radio" 
                  onclick='oControl.fireChanges +'> 
              <label for=' + oControl.getNone() + '>None</label>
        <input id=' + oControl.getB() +' name="state_' + 
              oControl.getB() + '" type="radio"> <label for=' + 
                     oControl.getB() +
                    ' onclick="">Viewer</label>>/div><div>
         <input id=' + oControl.getC() + ' name="state_' + oControl.getA() +
                    '" type="radio"> <label for=' + oControl.getC() + ' onclick="">Owner</label> <a></a></div>'
                );

            },

我知道上面的渲染器不好看,但是从上面的混乱中重要的一点是:

<input id=' + oControl.getA() + ' name="state_' + 
             oControl.getA() + '" type="radio" 
                  onclick='oControl.fireChanges +'> 

我希望调用该事件,但它没有调用它。得到错误:

Uncaught SyntaxError: Unexpected token }

并检查错误所在的行:

(函数(事件){函数})

只是想知道有没有办法调用事件?

【问题讨论】:

  • 您有什么方法知道如何将事件添加到 html 元素?我对这里的答案不满意,因为它不能解决实际问题......

标签: javascript jquery sapui5 custom-controls


【解决方案1】:

为什么要创建自定义控件? sap.m.SegmentedButton 有什么问题?

【讨论】:

  • 感谢 A.vh 。老实说,我没有看到 SAP UI5 中存在的控件,并认为这样的东西不存在。我将使用非常适合我的分段按钮。然而,正如我在玩弄并触发了上述事件一样。我曾经使用jquery在渲染后绑定onclick,然后调用事件
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-17
  • 2010-11-23
  • 1970-01-01
  • 2012-10-29
  • 2018-05-28
  • 1970-01-01
相关资源
最近更新 更多