我有一个包含多个输入的表格。我使用Jquery的form.serialize()
发送每个ajax表单。网络标签显示数据已成功发送(welcomesCritiques: on, complete: on
)。
在服务器端,我在自定义处理程序中捕获了这些输入
public async Task<IActionResult> OnPostLoadBooksAsync(string search, bool welcomesCritiques, bool complete, int startIndex, int amount)
字符串和整数完美地绑定在一起。但是傻子总是假的。当我用字符串替换布尔值时,我会“ on”。
这是一个已知问题吗?我如何才能使“上”成为笨蛋?
感谢您的帮助!
答案 0 :(得分:2)
要绑定到布尔值,您需要将值设置为“ true”,而不是默认值,即“ on”:
<input type="checkbox" name="welcomesCritiques" value="true" />
只有选中此复选框,才会提交该值。如果没有为处理程序参数提供任何值,则默认为false
。
在此处查看有关剃刀形式的复选框的更多信息:https://www.learnrazorpages.com/razor-pages/forms/checkboxes