在我的表单中,我想只在选择了所有字段(和单选按钮列表)时启用表单.
到目前为止,当标题字段包含以下内容时,我已成功启用提交按钮:
onkeyup="if(this.textLength != 0) {subnewtopic.disabled = false} else {subnewtopic.disabled = true}"
我的目标是只在所有内容都填满后启用提交按钮.我该怎么做呢?
<form action="" method="post" id="subnewtopicform" /> Title: <input type="text" name="title" onkeyup="if(this.textLength != 0) {subnewtopic.disabled = false} else {subnewtopic.disabled = true}"> <br/> Description: <textarea name="description"></textarea> <br/> Category: <ul class="list:category categorychecklist form-no-clear" id="categorychecklist"> <li id="category-19"><label class="selectit"><input type="radio" id="in-category-19" name="category" value="19"> Animation</label></li> <li id="category-20"><label class="selectit"><input type="radio" id="in-category-20" name="category" value="20"> Anime</label></li> </ul> <input type="submit" value="Submit Topic" class="button-primary" name="subnewtopic" id="subnewtopic" disabled="disabled" /> </form>
解决方法
这是你的小提琴.
http://jsfiddle.net/soyn0xag/6/
$("input[type='text'],textarea").on("keyup",function(){ if($(this).val() != "" && $("textarea").val() != "" && $("input[name='category']").is(":checked") == true){ $("input[type='submit']").removeAttr("disabled"); } else { $("input[type='submit']").attr("disabled","disabled"); } }); $("input[name='category']").on("change","disabled"); } });