validation - 无法删除 MVC 中的强制验证
问题描述
我不是专家级 MVC 程序员,但必须对代码进行一些小改动。有什么帮助吗?我有一个具有 [required] 属性的字段 CallerType。但是,我不想再强制了,所以我删除了 [required] 属性,但仍然得到相同的 input required 错误。
public virtual CallType CallType { get; set; }
[Display(Name = "Type of Calls")]
/*Akbar-start*[Required]*Akbar-end*/
public int CallTypeID { get; set; }
<div class="form-group col-3">
<label asp-for="Intake.CallTypeID" class="control-label"></label>
<select asp-for="Intake.CallTypeID"class="form-control">asp-items="Model.CallTypes">
<option value="">Please Select</option>
</select>
<span asp-validation-for="Intake.CallTypeID" class="text-danger"></span>
</div>
错误: 在此处输入图像描述
我也看到了像下面这样的 javascript,但不确定它是如何被调用的:
$('input').each(function () {
var req = $(this).attr('data-val-required');
var hide = $(this).attr('hide-required-indicator');
var hasIndicator = $(this).hasClass('has-required-indicator');
if (undefined != req && undefined == hide && !hasIndicator) {
var label = $('label[for="' + $(this).attr('id') + '"]');
var text = label.text();
if (text.length > 0) {
label.append('<span style="color:red" class="required-indicator"> *</span>');
$(this).addClass('has-required-indicator');
}
}
});
$('select').each(function () {
var req = $(this).attr('data-val-required');
var hasIndicator = $(this).hasClass('has-required-indicator');
if (undefined != req && !hasIndicator) {
var label = $('label[for="' + $(this).attr('id') + '"]');
var text = label.text();
if (text.length > 0) {
label.append('<span style="color:red"> *</span>');
$(this).addClass('has-required-indicator');
}
}
});
解决方案
我能够解决这个问题。这是诀窍:
将 int 更改为 int?
public int CallTypeID { get; set; }
IE
public int? CallTypeID { get; set; }
? 表示该字段可以为空。它覆盖了 [Required] 属性
推荐阅读
- solr - 在 Solr 中将一些文档从一个集合移动到另一个集合
- django - 如何公开 docker 容器以访问主机数据库?
- python - 有没有办法将多维数组保存为位类型?
- python - 如果它包含列表中的单词,则替换 Pandas 系列中部分字符串的最快方法
- r - 查找 data.table 中的列表是否包含其他列中的单词
- inno-setup - 使用 Inno Setup 为当前用户安装 Shell 扩展
- dart - 如何在飞镖中生成不包括特定编号的随机数?
- java - 导出的 SVG 溢出边界
- javascript - 使用Jquery计算两个日期之间的月差和半月差
- android - 添加flutter_email_sender插件后flutter无法编译