【发布时间】:2014-07-24 11:28:41
【问题描述】:
我无法在FIDDLE 上思考逻辑并实现它
问题是: 如果至少有一个文本框(共 2 个,即 HR 和 Min)验证为真,则它应该允许提交表单...
例如。如果我在 Min 文本框中输入“1”并单击提交,那么它应该提交表单,因为 1 是有效的 min,反之亦然 但在我的情况下,它仅在两个文本框值都为 true 时才提交表单
jQuery 代码
$(document).ready(function() {
$.fn.SubmitForm = function(id) { //submit the form
var hour = $("#time-hr-id" + id).val();
var mins = $("#time-min-id" + id).val();
if (isNaN(hour) || hour > 24 || hour < 0.1) {
var error_msg = 'Hour:Not a valid value';
alert(error_msg);
$("#time-hr-id" + id).focus();
} else if(isNaN(mins) || mins > 60 || mins < 0.1) {
var error_msg = 'Mins:Not a valid value';
alert(error_msg);
$("#time-min-id" + id).focus();
} else {
$("#formid" + id).submit();
}
};
});
HTML代码:
<table cellspacing="0" class="table table-striped TF" style="width: 100%;" id="table6">
<tbody>
<tr class="fltrow">
<td>
<input id="flt0_table6" type="hidden" ct="0" class="flt">
</td>
<td>
<input id="flt1_table6" type="hidden" ct="1" class="flt">
</td>
<td>
<input id="flt2_table6" type="hidden" ct="2" class="flt">
</td>
<td>
<input id="flt3_table6" type="hidden" ct="3" class="flt">
</td>
<td>
<input id="flt4_table6" type="hidden" ct="4" class="flt">
</td>
<td>
<input id="flt5_table6" type="hidden" ct="5" class="flt">
</td>
<td>
<input id="flt6_table6" type="hidden" ct="6" class="flt">
</td>
<td>
<input id="flt7_table6" type="hidden" ct="7" class="flt">
</td>
</tr>
<tr class="success">
<td style="width: 15%;">
S.no
</td>
<td style="width: 15%;">
Activity <br>
Name
</td>
<td style="width: 5%;">
Activity Option
</td>
<td style="width: 5%;">
Duration<br>
HR:MIN
</td>
<td style="width:10%;">
cals
</td>
<td style="width: 5%;">
distance
</td>
<td style="width: 5%;">
Unit
</td>
<td style="width: 15%;">
Submit
</td>
</tr>
<tr id="formrowid228" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid228">
</form>
<td style="width:5%;">
1
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/228/227">sitting - card playing, playing board games</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id228" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(228);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(228);" id="time-min-id228" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id228" value="1.5"><span id="cals-id228" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(228);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid229" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid229">
</form>
<td style="width:5%;">
2
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/229/227">standing - drawing (writing), casino gambling, duplicating machine</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id229" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(229);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(229);" id="time-min-id229" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id229" value="2.3"><span id="cals-id229" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(229);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid230" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid230">
</form>
<td style="width:5%;">
3
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/230/227">sitting - reading, book, newspaper, etc.</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id230" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(230);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(230);" id="time-min-id230" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id230" value="1.3"><span id="cals-id230" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(230);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid231" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid231">
</form>
<td style="width:5%;">
4
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/231/227">sitting - writing, desk work, typing</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id231" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(231);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(231);" id="time-min-id231" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id231" value="1.8"><span id="cals-id231" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(231);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid232" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid232">
</form>
<td style="width:5%;">
5
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/232/227">standing - talking or talking on the phone</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id232" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(232);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(232);" id="time-min-id232" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id232" value="1.8"><span id="cals-id232" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(232);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid233" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid233">
</form>
<td style="width:5%;">
6
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/233/227">sitting - talking or talking on the phone</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id233" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(233);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(233);" id="time-min-id233" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id233" value="1.5"><span id="cals-id233" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(233);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid234" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid234">
</form>
<td style="width:5%;">
7
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/234/227">sitting - studying, general, including reading and/or writing</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id234" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(234);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(234);" id="time-min-id234" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id234" value="1.8"><span id="cals-id234" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(234);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid235" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid235">
</form>
<td style="width:5%;">
8
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/235/227">sitting - in class, general, including note-taking or class discussion</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id235" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(235);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(235);" id="time-min-id235" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id235" value="1.8"><span id="cals-id235" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(235);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid236" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid236">
</form>
<td style="width:5%;">
9
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/236/227">standing - reading</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id236" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(236);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(236);" id="time-min-id236" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id236" value="1.8"><span id="cals-id236" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(236);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid237" style="display: none;">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid237">
</form>
<td style="width:5%;">
10
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/237/227">standing - miscellaneous</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id237" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(237);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(237);" id="time-min-id237" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id237" value="2.0"><span id="cals-id237" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<button onclick="$(this).SubmitForm(237);" class="btn btn-success activity-btn" type="button">
<span class="glyphicon glyphicon-plus"></span>
</button>
</td>
</tr>
<tr id="formrowid243">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid243">
</form>
<td style="width:5%;">
1
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/243/227">running</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id243" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(243);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(243);" id="time-min-id243" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id243" value="1.5"><span id="cals-id243" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<input onclick="$(this).SubmitForm(243);" type="button" value='submit'/>
</td>
</tr>
<tr id="formrowid245">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid245">
</form>
<td style="width:5%;">
2
</td>
<td style="width:25%;" class="text-capitalize">
<a href="http://localhost/tbft/webapp/index.php/logs/activity/245/227">Dancing</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id245" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(245);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(245);" id="time-min-id245" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id245" value="2.5"><span id="cals-id245" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<input onclick="$(this).SubmitForm(245);" type="button" value='submit'/>
</td>
</tr>
<tr id="formrowid246">
<form method="post" action="/tbft/webapp/logs/insertAcitivity" id="formid246">
</form>
<td style="width:5%;">
3
</td>
<td style="width:25%;" class="text-capitalize">
<a href="localhost/tbft/webapp/index.php/logs/activity/246/227">Playing</a>
</td>
<td style="width:25%;" class="text-capitalize">
-
</td>
<td style="width:15%;" class="text-capitalize">
<div style="display:inline-flex;">
<input maxlength="2" id="time-hr-id246" name="timeHrTxt" size="2" type="text" style="width:35px;text-align:center;" value="" onkeyup="$(this).CalculateCalorie(246);" placeholder=" HR"> : <input onkeyup="$(this).CalculateCalorie(246);" id="time-min-id246" name="timeMinTxt" placeholder=" MIN" type="text" style="width:35px;text-align:center;" maxlength="2" size="2" value="">
</div>
</td>
<td style="width:5%;" class="text-capitalize">
<input type="text" style="display:none;" name="metsTxt" id="mets-id246" value="1.5"><span id="cals-id246" class="cals">0.00</span>
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
-
</td>
<td style="width:5%;" class="text-capitalize">
<input onclick="$(this).SubmitForm(246);" type="button" value='submit'/>
</button>
</td>
</tr>
</tbody>
</table>
【问题讨论】:
-
TypeError: $(...).CalculateCalorie is not a function is appering while I try to enter something.. 你限制按键事件中的任何键
标签: javascript jquery