Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如果该值设置为0,则默认情况下选中Mvc Razor RadioButton_Asp.net Mvc_Razor - Fatal编程技术网

Asp.net mvc 如果该值设置为0,则默认情况下选中Mvc Razor RadioButton

Asp.net mvc 如果该值设置为0,则默认情况下选中Mvc Razor RadioButton,asp.net-mvc,razor,Asp.net Mvc,Razor,以前有没有人经历过这种情况,背后有什么原因 @Html.RadioButtonFor(m => m.SelectedWishlistId, 0, new { id = "newWishlist" }) 以上行优先于 @Html.RadioButtonFor(m => m.SelectedWishlistId, wishlist.Id, new { @checked = "checked"}) 即使未设置已选中属性 @Html.RadioButtonFor(x => x.I

以前有没有人经历过这种情况,背后有什么原因

@Html.RadioButtonFor(m => m.SelectedWishlistId, 0, new { id = "newWishlist" })
以上行优先于

@Html.RadioButtonFor(m => m.SelectedWishlistId, wishlist.Id, new { @checked = "checked"}) 
即使未设置
已选中
属性

@Html.RadioButtonFor(x => x.Id, value)
如果
x.Id
等于
value
,则即使未指定该属性,也将设置
选中的
属性。这是因为
RadioButtonHelper
有自己的自定义检查:

isChecked = model != null &&
    !String.IsNullOrEmpty(name) &&
    String.Equals(model.ToString(), valueString, StringComparison.OrdinalIgnoreCase);
然后:

if (isChecked)
{
    tagBuilder.MergeAttribute("checked", "checked");
}

谢谢您的参考和解释。我个人认为,如果我明确地想设置
checked
属性,它应该优先于一切。