提交按钮仅适用于 1 个功能
onsubmit button works only for 1 function
我在javascript中有2个函数,但只返回一个错误,而不是两个。
如果我删除一个函数,那么其他函数就可以工作,但是如果我有 2 个函数,它只显示一个。
这是我的JavaScript:
function validateForm(event) {
event = event || window.event || event.srcElement;
var initialMonoReading = $('#InitialMonoReading').val();
var newMonoReading = $('#newMonoReading').val()
if (~~newMonoReading < ~~initialMonoReading) {
$('#MonoErrorMessage').text("New Mono Readings must be MORE than existing");
$('#MonoErrorMessage').show();
event.preventDefault();
}
else {
$('#MonoErrorMessage').hide();
}
}
function validateForm(event) {
event = event || window.event || event.srcElement;
var InitialColourReading = $('#InitialColourReading').val();
var newColourReading = $('#newColourReading').val()
if (~~newColourReading < ~~InitialColourReading) {
$('#ColourErrorMessage').text("New Colour Readings must be MORE than existing");
$('#ColourErrorMessage').show();
event.preventDefault();
}
else {
$('#ColourErrorMessage').hide();
}
}
这是我提交的内容:
@using (Html.BeginForm("Save", "ReadingsEntry", FormMethod.Post, new { enctype = "multipart/form-data", onsubmit = "validateForm(event)"}))
这仅适用于 ColorErrorMessage . 但忽略 MonoErrorMessage。 当它应该显示两个错误时....
那么为什么要跳过其中一个函数
在同一
作用域中声明两个同名的函数将导致最新的函数覆盖较早的函数。
最好这样做:
function validateForm(event){
validateMono(event)
validateColor(event) //Or something to combine the results.
}
function validateMono(event) {
event = event || window.event || event.srcElement;
var initialMonoReading = $('#InitialMonoReading').val();
var newMonoReading = $('#newMonoReading').val()
if (~~newMonoReading < ~~initialMonoReading) {
$('#MonoErrorMessage').text("New Mono Readings must be MORE than existing");
$('#MonoErrorMessage').show();
event.preventDefault();
}
else {
$('#MonoErrorMessage').hide();
}
}
function validateColor(event) {
event = event || window.event || event.srcElement;
var InitialColourReading = $('#InitialColourReading').val();
var newColourReading = $('#newColourReading').val()
if (~~newColourReading < ~~InitialColourReading) {
$('#ColourErrorMessage').text("New Colour Readings must be MORE than existing");
$('#ColourErrorMessage').show();
event.preventDefault();
}
else {
$('#ColourErrorMessage').hide();
}
}
然后对于 HTML:
@using (Html.BeginForm("Save", "ReadingsEntry", FormMethod.Post, new { enctype = "multipart/form-data", onsubmit = "validateForm(event)"}))
相关文章:
- JQueryhide()不适用于Mozzilla,但适用于Chrome
- PHP中的setcookie仅适用于localhost
- html5 drawImage适用于firefox,而不是chrome
- 提供“;onClick"适用于iPad(触摸屏)和桌面用户的默认功能
- jQuery表单验证适用于Mozilla和Internet Explorer,但不适用于Chrome或Safari
- jQuery自动完成功能不适用于多个文本输入
- ResolveUrl是否适用于././也
- Firebase updateChildValues适用于IOS,但不适用于Web和Android
- JavaScript警报适用于int,但不适用于string
- SQLite插件适用于Mac和Windows,但不适用于手机上的Safari
- Regex Replace仅适用于Last Match
- window.onload适用于aspx页面,但不适用于普通html
- Jquery Ajax POST不工作.适用于GET
- 画布上的自定义字体仅适用于safari
- 自动完成功能适用于Chrome,但不适用于IE
- 提交按钮仅适用于 1 个功能
- 播放音频HTML5功能仅适用于Chrome
- 该功能适用于chrome,但不适用于IE和Firefox
- 该功能仅适用于Opera
- Js数组搜索功能,适用于ie8