个人一个需求,判断一个资产的代码,若是没有代码,能够编辑,若是有,只读。html
首先判断资产的有无:@Model.AssetCode==null,结果@Model.AssetCode为空的时候语法错误,最后想了个办法,取长度判断@Model.AssetCode.Length==0spa
@{ bool isAssertCodeNull=@Model.AssetCode.Length==0?false:true;}code
而后传值到html中 htm
<input id="AssetCode" value="@Model.AssetCode" readonly=@isAssertCodeNull />
但当AssetCode为空的时候仍是不能编辑。用来,只要 input 有readdonly属性,无论其值是什么,都不可编辑。blog
最后的解决办法,在js中,判断AssetCode的长度是否为0,是,移除readonly属性,问题解决rem
if(@Model.AssetCode.Length==0)
{
$('#AssetCode').removeAttr('readonly');
}