§2-1
这小节 先来实现一个非常简单的form。在页面上只有一个文本框和一个提交按钮,提交之后将文本框中的信息打印在控制台上。
Home.html











Home.page








Home.java

























运行工程,在文本框里输值并提交,控制台能成功打印相应的值。
注意:form和text在组件定义里,component 的type标签分别是Form 和 TextField,这是区分大小写的。必须是Form和TextField,指明组件的类型分别是form表单和文本框。
Form组件有个listener监听,绑定page类的一个方法,执行提交后的操作。方法名任意。
username这个组件也被绑定到page类的一个属性。page类里必须有这个属性的get方法。
§2-2
下面对上面的代码稍加修改。实现提交后页面跳转的功能。
创建一个显示结果的页面 Result.html









相应的Result.page





还有page类


















下面修改Home.java的onSubmit()方法,使其接收到提交参数后跳转到Result页面






onSubmit方法多了一个参数,IRequestCycle cycle 看名字像是接口类型的。
cycle.activate("Result"); 跳转到Result页面。如果之前还有其他activate事件的话,只执行最后一个。
这个功能还可以换个方式实现,修改onSubmit函数:






修改其返回值为String类型,return页面的名称就可以了,不需要cycle.activate了。。不过那个参数还是要的。
运行结果 成功跳转,但是没有将提交的参数显示出来,接下就是要这事儿。
我们在onSubmit方法里调用Result页面类,然后调用resultValue的set方法,最后跳转到Result.html来显示。
修改onSubmit方法,添加Result的page类调用,以及resultValue设置的代码。








上面的代码中,在获得将要跳转的页面后,还可以将其直接return,就可以跳转了:








函数的返回值改成了IPage。