验证器仅在重新编辑字段时才接受提交(包括 PHP)
Validator accepts submit only when re-editing field (include PHP)
我有一个奇怪的问题。
我的提交按钮只有在我重新编辑任何字段时才有效。
如果我按下提交按钮变为禁用。
然后我需要重新编辑日期字段(任何字段都需要验证)然后我可以提交表格。
注意:即使重新编辑任何字段,在 jsfiddle 上也不起作用(提交按钮仍然禁用)。但是重新编辑在我的项目上有效!
这是我的代码
Jsfiidle Link
$(document).ready(function() {
$('#reportForm')
.bootstrapValidator({
// Only disabled elements are excluded
// The invisible elements belonging to inactive tabs must be validated
excluded: [':disabled'],
feedbackIcons: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
reportStartDate: {
validators: {
notEmpty: {
message: 'Please select Date'
}
}
},
reportEndDate: {
validators: {
notEmpty: {
message: 'Please select Date'
}
}
}
}
})
// Called when a field is invalid
.on('error.field.bv', function(e, data) {
// data.element --> The field element
var $tabPane = data.element.parents('.tab-pane'),
tabId = $tabPane.attr('id');
$('a[href="#' + tabId + '"][data-toggle="tab"]')
.parent()
.find('i')
.removeClass('fa-check')
.addClass('fa-times');
})
// Called when a field is valid
.on('success.field.bv', function(e, data) {
// data.bv --> The BootstrapValidator instance
// data.element --> The field element
var $tabPane = data.element.parents('.tab-pane'),
tabId = $tabPane.attr('id'),
$icon = $('a[href="#' + tabId + '"][data-toggle="tab"]')
.parent()
.find('i')
.removeClass('fa-check fa-times');
// Check if the submit button is clicked
if (data.bv.getSubmitButton()) {
// Check if all fields in tab are valid
var isValidTab = data.bv.isValidContainer($tabPane);
$icon.addClass(isValidTab ? 'fa-check' : 'fa-times');
}
});
});
我花了半天时间终于发现 solution.The 问题是 button.Bootstrap 验证的 'name' 属性在理解是否提交表单时遇到问题!
当我使用下面的方法时,不起作用!
<button type="submit" class="btn btn-warning" name="submit" value="showReport">Show Report</button>
使用php代码
if (isset($_POST['submit']))
解决方法!
<button type="submit" class="btn btn-warning">Show Report</button>
使用php代码
($_SERVER['REQUEST_METHOD'] == 'POST')
我遇到了同样的问题,但意识到我的目标是容器 div 而不是表单标签。可能会节省一些时间。
我有一个奇怪的问题。
我的提交按钮只有在我重新编辑任何字段时才有效。 如果我按下提交按钮变为禁用。 然后我需要重新编辑日期字段(任何字段都需要验证)然后我可以提交表格。
注意:即使重新编辑任何字段,在 jsfiddle 上也不起作用(提交按钮仍然禁用)。但是重新编辑在我的项目上有效!
这是我的代码 Jsfiidle Link
$(document).ready(function() {
$('#reportForm')
.bootstrapValidator({
// Only disabled elements are excluded
// The invisible elements belonging to inactive tabs must be validated
excluded: [':disabled'],
feedbackIcons: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
reportStartDate: {
validators: {
notEmpty: {
message: 'Please select Date'
}
}
},
reportEndDate: {
validators: {
notEmpty: {
message: 'Please select Date'
}
}
}
}
})
// Called when a field is invalid
.on('error.field.bv', function(e, data) {
// data.element --> The field element
var $tabPane = data.element.parents('.tab-pane'),
tabId = $tabPane.attr('id');
$('a[href="#' + tabId + '"][data-toggle="tab"]')
.parent()
.find('i')
.removeClass('fa-check')
.addClass('fa-times');
})
// Called when a field is valid
.on('success.field.bv', function(e, data) {
// data.bv --> The BootstrapValidator instance
// data.element --> The field element
var $tabPane = data.element.parents('.tab-pane'),
tabId = $tabPane.attr('id'),
$icon = $('a[href="#' + tabId + '"][data-toggle="tab"]')
.parent()
.find('i')
.removeClass('fa-check fa-times');
// Check if the submit button is clicked
if (data.bv.getSubmitButton()) {
// Check if all fields in tab are valid
var isValidTab = data.bv.isValidContainer($tabPane);
$icon.addClass(isValidTab ? 'fa-check' : 'fa-times');
}
});
});
我花了半天时间终于发现 solution.The 问题是 button.Bootstrap 验证的 'name' 属性在理解是否提交表单时遇到问题!
当我使用下面的方法时,不起作用!
<button type="submit" class="btn btn-warning" name="submit" value="showReport">Show Report</button>
使用php代码
if (isset($_POST['submit']))
解决方法!
<button type="submit" class="btn btn-warning">Show Report</button>
使用php代码
($_SERVER['REQUEST_METHOD'] == 'POST')
我遇到了同样的问题,但意识到我的目标是容器 div 而不是表单标签。可能会节省一些时间。