我有5行的文本字段有5个这样的..
<div class="dt_distance_slab"> <g:textField class ="number distanceSlab1" name="distanceSlabCost1" id = "distanceSlabCost1" value=""/> </div> <div class="dt_distance_slab"> <g:textField class ="number distanceSlab2" name="distanceSlabCost2" id = "distanceSlabCost2" value=""/> </div> <div class="dt_distance_slab"> <g:textField class ="number distanceSlab3" name="distanceSlabCost3" id = "distanceSlabCost3" value=""/> </div> <div class="dt_distance_slab"> <g:textField class ="number distanceSlab4" name="distanceSlabCost4" id = "distanceSlabCost4" value=""/> </div> <div class="dt_distance_slab"> <g:textField class ="number distanceSlab5" name="distanceSlabCost5" id = "distanceSlabCost5" value=""/> </div>
这里所有的字段都是可选的..我想放置验证,如果用户想要输入的值..他不能跳过一行之间…如果他想输入一个文本字段的值,上一个文本字段必须有值. .
验证将在提交表单时进行
解决方法
尝试使用此代码:
$(document).ready(function(){ //assuming the validation fires on the click of a button $("#btnSubmit").click(function(){ //set valid variable to true var blnIsValid = true; //loop through each of the text Boxes $(":text[class^='number']").each(function(i){ //start validating from the second text Box if(i > 0) { var curTxtBox = $(this); var prevTxtBox = $(":text[class^='number']:eq("+ (i-1) +")"); if($.trim(curTxtBox.val()) != "" && $.trim(prevTxtBox.val()) == "") { alert("Enter value for prevIoUs distance"); //set focus on the text Box prevTxtBox.focus(); //set valid variable to false blnIsValid = false; //exit the loop return false; } } }); return blnIsValid; }); });
原文地址:https://www.jb51.cc/jquery/179255.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。