如何以编程方式制作Dojo dijit表单
我是Dojo新手,我正在尝试创建一些ui,但只是使用编程方式如何以编程方式制作Dojo dijit表单,dojo,dijit.form,Dojo,Dijit.form,我是Dojo新手,我正在尝试创建一些ui,但只是使用编程方式 如果有人能给我展示一些如何使用Dojo dijit.form.form以编程方式制作表单的示例,我会很高兴。我一直在寻找一些例子,但我能找到的只是它的声明方式。它非常简单。您只需创建表单的所有片段,然后将所有片段附加到它们各自的父级。要创建表单对象,就像任何dijit对象一样,需要传递构造函数一个param对象和一个domNode来放置它,如下所示: var resetbtn = new dijit.form.Button({
如果有人能给我展示一些如何使用Dojo dijit.form.form以编程方式制作表单的示例,我会很高兴。我一直在寻找一些例子,但我能找到的只是它的声明方式。它非常简单。您只需创建表单的所有片段,然后将所有片段附加到它们各自的父级。要创建表单对象,就像任何dijit对象一样,需要传递构造函数一个param对象和一个domNode来放置它,如下所示:
var resetbtn = new dijit.form.Button({
type: 'reset',
label: 'Reset'
}, dojo.doc.createElement('button'));
完整的例子是。要了解可以向params对象添加哪些属性,请参阅。任何属性都可以添加到参数列表中。更面向对象的解决方案:
define( [
"dojo/_base/declare",
"dijit/form/Form",
"dijit/form/Textarea",
"dijit/form/Button"
],
function(declare, Form, TextArea, Button) {
return declare( "mypackage.MyForm", Form, {
textarea: new TextArea({}),
submitButton: new Button({
type: "submit",
label: "ready!"
}),
constructor: function(args) {
declare.safeMixin(this, args);
},
onSubmit: function() {
alert(this.textarea.get('value'));
},
postCreate: function() {
this.domNode.appendChild( this.textarea.domNode );
this.domNode.appendChild( this.submitButton.domNode );
}
});
}
);
只需将一个新的mypackage.MyForm({})放在您可能期望的任何地方。快速评论:您不应该将submitButton和textarea作为构造函数中定义的变量吗?它们是对象,它们最终会以这种方式出现在原型中。。。我认为这是不推荐的!能给我一把小提琴吗?safeMixin做什么?谢谢