我希望有人可以帮助我处理一段时间以来构建的一些jquery脚本。该脚本可以正常工作并将某些表单数据成功发布到mysql数据库。
我遇到的问题是我正在尝试实施表单验证,但是我无法使验证正常工作,并且我怀疑我在某个地方放置了一个不正确的括号。我在此处发布的脚本有效,但表单验证无效。任何帮助,不胜感激。
$(document).ready(function() {
$("#your_results").hide();
$("#your_data").hide();
$("#submitButtonId").on("click", function(e) {
$('#gauge').empty();
e.preventDefault();
//Validate the input
$(function() {
$("#myform").validate({
});
//Post the form if field has been completed
var formdata = $('#myform').serialize();
$.post('php_includes/insert.php', formdata,
function(data) {
//Reset Form
$('#myform')[0].reset();
fetchRowCount();
});
return false;
});
});
//Fetch data from server
function fetchRowCount() {
$.ajax({
url: 'php_includes/server.php',
dataType: "json",
success: function(data) {
$("#rows").html(data.rows);
$("#min").html(data.min);
$("#max").html(data.max);
$("#mean").html(data.total);
$("#last").html(data.last_entry);
//Show gauge once json is received from server
var gage = new JustGage({
id: "gauge",
value: data.total,
min: data.min,
max: data.max,
title: "Sample Data"
});
$("#your_results").fadeIn("slow");
$("#your_data").fadeIn("slow");
//Scroll to Gauge
$('html, body').animate({
scrollTop: $('#results').offset().top
}, 'slow');
$("#gauge").fadeIn(slow);
}
});
}
});
形式
<form class="form-inline" action="" id="myform" form="" method="post">
<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="bill_cost"></label>
<div class="col-md-8">
<input id="bill_cost" name="bill_cost" type="text" placeholder="Bill Cost" class="form-control input-lg">
</div>
</div>
<!-- Button -->
<div class="form-group">
<label class="col-md-4 control-label" for="submit1"></label>
<div class="col-md-4">
<input type="submit" id="submitButtonId" name="submit1" class="btn btn-primary btn-xl" value="Submit">
</div>
</div>
</form>
结果显示在这里
<div class="container">
<div class="row">
<div class="col-lg-12 text-center">
<!-- RESULTS HERE -->
<div id="your_results"></div>
<!-- .GAUGE HERE -->
<div id="gauge" class="300x260px"></div>
如果正确缩进代码,问题将变得显而易见:
$(function() {
$("#myform").validate({});
//Post the form if field has been completed
var formdata = $('#myform').serialize();
$.post('php_includes/insert.php', formdata,
function(data) {
//Reset Form
$('#myform')[0].reset();
fetchRowCount();
});
return false;
});
您将验证函数包装在$(handler)
(一个JQuery对象中,当传递一个函数时,它成为。的简写$(document).ready(handler);
。因此,您是在准备好文档时运行验证,而不是单击提交按钮时运行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句