0

プログラムで道場フォームを作成し、ボタンのクリック時に入力 TextBox を検証しようとしています。しかし、有効にしようとすると、「dijit.byId(..) は未定義です。以下はコードです:

var form = new dijit.form.Form({ 
                                    nametb: new dijit.form.TextBox({
                                        name: "name",
                                        type: "text",
                                        required: true,
                                        placeHolder: "Your Full Name"
                                    },"nametb"),
                                    subBtn: new dijit.form.Button({
                                        label: "Proceed",
                                        onClick: function(){
                                            if(dijit.byId("nametb").get('value') == null || dijit.byId("nametb").get('value').length == 0 )
                                                {
                                                    alert("Please enter Name");
                                                    return false;
                                                }

                                        }
                                    }),
                                    cnclBtn: new dijit.form.Button({
                                        label: "Cancel",
                                        onClick: function(){
                                            dia.hide();
                                        }
                                    }),
                                    postCreate: function(){
                                        this.domNode.appendChild(this.nametb.domNode);
                                        this.domNode.appendChild(this.subBtn.domNode);
                                        this.domNode.appendChild(this.cnclBtn.domNode);
                                    }
                                });

しかし、[続行]ボタンをクリックするとエラーが発生しますdijit.byId(...) is undefined

この TextBox を検証するにはどうすればよいですか?

4

2 に答える 2

0

指定されたウィジェットでこれを試してみてください:

// validate nametb textbox
dijit.byId("nametb").validate();

または、次のようにフォームを検証できます。

if (dijit.byId("yourForm").validate()) { 
   // do something if your form is valid
} else {
   // show error message
}
于 2014-12-12T09:05:30.377 に答える