如果某些输入字段未填写,如何禁用按钮?
How to disable the button if some input field is not filled?
IBM web experience factory使用dojo库,我想知道我在consumer model中设置<input type="text" name="usrname" required>
,如果输入不填,按钮是否仍然有效?
好吧,HTMLFormElement
有一个名为 checkValidity()
的方法,您可以使用它。
因此,在您的情况下,您可以使用 :input
select 或 dojo/query
来查询表单内的所有输入元素(包括按钮、复选框、文本字段、文本区域和 select 框),然后使用 onChange
事件检查表单是否有效并更改按钮 disabled
属性。
例如:
query("[name=myForm] :input").on("change", function(evt) {
var isInvalid = !evt.target.form.checkValidity();
query("button[type=submit]").attr("disabled", isInvalid);
});
现在您需要做的就是确保您的按钮最初 disabled/enabled 取决于表单的初始状态。
可以在 JSFiddle 上找到完整的示例:http://jsfiddle.net/j8L6j77g/
IBM web experience factory使用dojo库,我想知道我在consumer model中设置<input type="text" name="usrname" required>
,如果输入不填,按钮是否仍然有效?
好吧,HTMLFormElement
有一个名为 checkValidity()
的方法,您可以使用它。
因此,在您的情况下,您可以使用 :input
select 或 dojo/query
来查询表单内的所有输入元素(包括按钮、复选框、文本字段、文本区域和 select 框),然后使用 onChange
事件检查表单是否有效并更改按钮 disabled
属性。
例如:
query("[name=myForm] :input").on("change", function(evt) {
var isInvalid = !evt.target.form.checkValidity();
query("button[type=submit]").attr("disabled", isInvalid);
});
现在您需要做的就是确保您的按钮最初 disabled/enabled 取决于表单的初始状态。
可以在 JSFiddle 上找到完整的示例:http://jsfiddle.net/j8L6j77g/