我已根据是否从下拉框中选择了某个项来设置一些自定义规则来验证字段。
我在下拉列表中有3个值
如果用户选择“未显示”,则会出现一个日期选择器,并且他们必须输入有效日期 如果用户选择“拒绝”,则会出现另一个下拉菜单,用户必须从中选择一个值
问题是它在IE8中工作但在IE7中不起作用。想法?
我已将其设置如下;
this.SetupValidations = function() {
//validations
LLNP4.validate('#uxReferralAssessmentDetailsForm',
{
rules: {
assessmentDecision: { requiredSelect: "0" },
NoShowDate: { required: othis.clientDidNotShowValidation },
DeclinedReason: { requiredSelect: othis.clientDeclinedValidation }
}
});
}
this.clientDidNotShowValidation = function() {
if ($("#uxassessmentDecision option:selected").text().toUpperCase() == "DID NOT SHOW")
{ return true; }
else
{ return false; }
}
this.clientDeclinedValidation = function() {
if ($("#uxassessmentDecision option:selected").text().toUpperCase() == "DECLINED")
{ return "0"; }
else
{ return "1"; }
}
this.ValidateReferralAssessmentSubmission = function() {
othis.SetupValidations();
if ($("#uxReferralAssessmentDetailsForm").valid()) {
return true;
}
else {
return false;
}
}
this.OnAssessmentSave = function () {
//post back to the server and update the assessment details
var options = {
target: '',
url: '../Referral/UpdateReferralAssessmentDetails',
data: { ReferralId: referralIdentifier },
beforeSubmit: othis.ValidateReferralAssessmentSubmission,
dataType: 'json',
success: othis.UpdateReferralAssessmentStatus,
clearForm: true
};
$('#uxReferralAssessmentDetailsForm').ajaxSubmit(options);
}
答案 0 :(得分:0)
也许你插入一个;在每个函数的末尾,像这样:
this.SetupValidations = function() {
//validations
LLNP4.validate('#uxReferralAssessmentDetailsForm',
{
rules: {
assessmentDecision: { requiredSelect: "0" },
NoShowDate: { required: othis.clientDidNotShowValidation },
DeclinedReason: { requiredSelect: othis.clientDeclinedValidation }
}
});
};
答案 1 :(得分:0)
有一个错字?
othis.SetupValidations();
不是“这个”而是“othis”吗?