我真的很困惑。我的表单中有以下 html:
<input class="check-box"
id="Data__Correct"
name="Data.Correct"
type="checkbox" value="Data.Correct" />
这将在网页上创建以下内容
<input class="check-box"
id="Data__Correct"
name="Data.Correct"
type="checkbox" value="False" />
当我选中复选框后,提交表单,然后使用 fiddler 进行检查。我看到它正在发送:
Data.Correct False
我认为应该是相反的。发生什么事了?
最佳答案
您误解了复选框的工作原理。如果未选中该复选框,则不会将任何值传递到后端。如果选中该复选框,则 value
属性中的值将传递到后端。在您的情况下,您将 value 设置为 False,因此您得到的字符串不会与 bool 值 false 混淆。 p>
如果您使用 value='False'
的目的是在加载时设置复选框的状态,那么您需要执行以下操作:
<input type="checkbox" ... checked/>
或者 checked="checked"
我相信也应该有效。如果存在选中状态,则该框被选中,否则未选中。
关于javascript - 为什么我的复选框返回错误的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6414827/