Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击按钮进行Dojo表单验证_Javascript_Html_Validation_Dojo - Fatal编程技术网

Javascript 单击按钮进行Dojo表单验证

Javascript 单击按钮进行Dojo表单验证,javascript,html,validation,dojo,Javascript,Html,Validation,Dojo,我正在使用Dojo1.5。我希望在单击按钮时对textfield进行dojo自定义验证(它不是提交按钮)。 我使用的是“dijit.form.ValidationTextBox” 如果我们将按钮类型更改为submit,则dojo验证正在工作。但如果我们把它改成按钮,它就不会 您可以在此处找到测试代码: 请告诉我如何在单击按钮时验证textbutton 下面是我的代码: dojo.require("dojo.parser"); dojo.require("dijit.form.Form")

我正在使用Dojo1.5。我希望在单击按钮时对textfield进行dojo自定义验证(它不是提交按钮)。 我使用的是“dijit.form.ValidationTextBox”

如果我们将按钮类型更改为submit,则dojo验证正在工作。但如果我们把它改成按钮,它就不会

您可以在此处找到测试代码:

请告诉我如何在单击按钮时验证textbutton

下面是我的代码:

dojo.require("dojo.parser");    
dojo.require("dijit.form.Form");    
dojo.require("dijit.form.Button");
dojo.require("dijit.form.ValidationTextBox");


function validateForm()
{   
    // Here I want to validate text box. 

}



<table style="border: 1px solid #9f9f9f;" cellspacing="10">
    <tr>
        <td>
            <label for="name">Name:</label>
        </td>
        <td>
            <input type="text" id="name" name="name" required="true" data-dojo-type="dijit/form/ValidationTextBox"   />
        </td>
    </tr>
    <tr>
        <td>
            <label for="dob">Date of birth:</label>
        </td>
        <td>
            <input type="text" id="dob" name="dob" data-dojo-type="dijit/form/DateTextBox"/>
        </td>
    </tr>
</table>

<button data-dojo-type="dijit/form/Button" type="button" onClick="return validateForm()">Validate Form</button>
dojo.require(“dojo.parser”);
require(“dijit.form.form”);
require(“dijit.form.Button”);
require(“dijit.form.ValidationTextBox”);
函数validateForm()
{   
//这里我想验证文本框。
}
姓名:
出生日期:
验证表单

你为什么不来看看这个

你提供的小提琴有几个地方不对劲,但先介绍一下背景:


在Dojo1.5及更早版本中,模块(dijit/widgets等)的命名和加载方式与1.6及更高版本略有不同。因此,在Dojo中,如果要在按钮上验证表单,请单击按钮(不是提交按钮),然后参考以下代码段

window.validateForm = function validateMyForm()
{
   var myForm = dijit.byId("myForm");
   if(myForm.validate())
     console.log("The form validation success..");
   else
     console.log("The form validation failed..");
}

谢谢你的建议,伙计。但在这种情况下,我们必须始终选择或单击文本框来验证它。我希望在点击按钮时使用相同的功能,就像一个示例:若用户忘记在文本框中输入文本,那个么它将显示空白字段错误。
<button data-dojo-type="dijit/form/Button" ... />
...
require(["dijit/form/Button", "dojo/domReady!"], function(Button) { ... });
window.validateForm = function validateForm()
{   
    var form = dijit.byId("myForm");
    if(form.validate()) {
        console.info("It was valid!");
    } else {
        console.warn("It was not valid!");
    }   
}
window.validateForm = function validateMyForm()
{
   var myForm = dijit.byId("myForm");
   if(myForm.validate())
     console.log("The form validation success..");
   else
     console.log("The form validation failed..");
}