2013-07-16 171 views
1

我有一个HTML帮助复选框在一个MVC3项目视图:Html.CheckBox不渲染

<% 
      var temp = Model.NonResident; 
      if (Model.NonResident) 
       Html.CheckBox("IsNonResident", true); 
      else 
       Html.CheckBox("IsNonResident", false); 
     %> 

模型字段“非居民确实有真值。我将这个值赋值给'temp',并通过它。当我调试时,代码确实碰到了Html.CheckBox(“IsNonResident”,true)段,但它不呈现。

我已选中“查看源代码”,并且该控件不存在。如果我删除'if'语句,它会在我使用时呈现:

<%=Html.CheckBox("IsNonResident", true)%> 

它必须是简单的东西,但我看不到它。谁能帮忙?

回答

1

区别在于<%=Html.CheckBox("IsNonResident", true)%>的等号。输出结果。用你的if块,你忽略了结果,所以输出永远不会对http响应产生影响。一种解决方法是像这样内联:

<%=Html.CheckBox("IsNonResident", Model.NonResident)%> 
+0

就是这样!谢谢。 – user2284341