我正在尝试显示某些内容(或不显示,具体取决于他们选择的内容)。但是,我需要在验证之前这样做。我怎么能这样做?我的代码只有在按下提交按钮后才会这样做。但我需要预先验证它,以便从一开始就出现红色。
(注意:我不想使用硬编码的 CSS,因为我需要使用类似的代码来显示和不显示)。
if($('#amortization_years').val() == '' || $('#amortization_years').val() == 0 || $('#amortization_years').val() >= 36 || $('#amortization_months').val() >= 12 || ($('#amortization_years').val() == 35 && $('#amortization_months').val() > 0))
{
$('#amortization_years').css('border', 'solid red 2px');
$('#error_years').fadeIn(3000);
$('#amortization_months').css('border', 'solid red 2px');
$('#error_months').fadeIn(3000);
valid = false;}
else {($('#error_years').fadeOut(3000) && $('#error_month').fadeOut(3000));
}
编辑:返工但仍需要帮助
我处理了@Aprillion 链接到我的内容。这就是我需要的(重做),用于下拉菜单。
最后,表格的一部分(下拉菜单中的#16)只有在满足某些条件时才需要出现(基本上,如果一个人选择第一个答案,那么他也只能选择第 16 个问题,这将出现在下拉菜单中。所以基本上,如果这个人没有在包含 15 个项目(加上第 16 个项目)的下拉菜单中选择任何项目,那么他就不能选择 #16。
这是我正在修改的代码。
<script>
/*
The id for the thing
sCat-<?php echo $numProj; ?><?php echo $numC ?>
*/
window.onload=function(){
var validate = function(evt){
// your custom code, e.g.:
valid = true;
if ($('.16th').val() !== "sCat-<?php echo $numProj; ?><?php echo $numC ?>") {
//valid = false;
$('.16thup').css('display', 'none');
//$('#a').addClass("invalid");
} else {
//$('#a').removeClass("invalid");
$('.16thup').css('display', 'block');
}
//return valid;
}
$('#myform').change(validate);
$('#myform').submit(validate);
}
</script>