首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在zk网格中执行乘法

在zk网格中执行乘法
EN

Stack Overflow用户
提问于 2014-06-14 19:06:52
回答 1查看 65关注 0票数 0

如何在zk网格中执行乘法我的网格如下所示

费率数量金额

2-3-6

4-4-16

EN

回答 1

Stack Overflow用户

发布于 2014-06-16 21:28:59

each代表var name,您在for each中如何命名该变量。默认情况下,这是each。如果MVVM:

您可以添加到您的VM:

代码语言:javascript
复制
public long countNumbers (int first, int second) {
    return (long)first + second;
}

在zul中:

代码语言:javascript
复制
<label value="@load(vm.countNumbers(each.number1, each.numer2))"/>

在MVVM或MVC中:

如果需要,你可以用这个方法编写你自己的标记库。(也适用于MVC)

需要在WEB-INF/tld文件夹中创建一个tld文件。:

代码语言:javascript
复制
<taglib>
    <!-- count numbers to each other -->
    <function>
        <name>countUp</name>
        <function-class>your.path.Classname</function-class>
        <function-signature>
            java.lang.Long countNumbers(java.lang.Integer, java.lang.Integer)
        </function-signature>
        <description>counts the 2 numbers to each other.</description>
    </function>
</taglib>

然后创建一个新的java util类(注意,该方法需要是静态的):

代码语言:javascript
复制
public static Long countNumbers (Integer first, Integer second) {
    return (Long)first + second;
}

在zul中:

代码语言:javascript
复制
<?taglib uri="/WEB-INF/tld/taglibname.tld" prefix="ct"?>

<label  value="@load(ct:countUp(each.number1,each.number2))"/>

如果你使用渲染器,你可以直接在java中设置一行的所有对象,所以计数2个值应该不会有问题,因为你已经有了原始对象。

编辑:将返回类型更改为long (2个大整型可能导致溢出)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24219296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档