为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Echo 框架中绑定复选框?

如何在 Echo 框架中绑定复选框?

Go
阿晨1998 2022-06-21 10:47:39
我有一个简单的表单,我想在发布请求上绑定它。这是表格:<form method="post" action="/post">    <input type="text" name="name" placeholder="name"><br>    <input type="checkbox" name="agree"><br>    <button type="submit">submit</button></form>我正在尝试将其绑定在这样的结构中:type PostForm struct {    Name  string    Agree bool}这是整个代码:package mainimport (    "github.com/labstack/echo/v4"    "html/template"    "io"    "log"    "net/http")type Template struct {    templates *template.Template}func (t *Template) Render(w io.Writer, name string, data interface{}, _ echo.Context) error {    return t.templates.ExecuteTemplate(w, name, data)}type PostForm struct {    Name  string    Agree bool}func main() {    e := echo.New()    e.Debug = true    e.Renderer = &Template{        templates: template.Must(template.ParseGlob("./templates/*.gohtml")),    }    e.GET("/", func(c echo.Context) error {        return c.Render(http.StatusOK, "index.gohtml", nil)    })    e.POST("/post", func(c echo.Context) error {        var form PostForm        err := c.Bind(&form)        if err != nil {            return c.String(http.StatusInternalServerError, err.Error())        }        return c.JSON(http.StatusOK, form)    })    log.Fatalln(e.Start(":3000"))}当我使用未选中的同意字段发布请求时,它工作正常:{  "Name": "sdfgsdfg",  "Agree": false}但是当我发送带有选中复选框的帖子时,出现错误:code=400, message=strconv.ParseBool: parsing "on": invalid syntax, internal=strconv.ParseBool: parsing "on": invalid syntax我做错了什么?这是 github 上的所有代码的仓库:https ://github.com/max-block/q__echo_bind_checkbox
查看完整描述

1 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

<html>

<head></head>

<body>

<form method="post" action="/post">

    <input type="text" name="name" placeholder="name"><br>

    // set the value as "true"

    <input type="checkbox" name="agree" value="true"><br>

    <button type="submit">submit</button>

</form>

</body>

</html>

checkbox的默认值为“on”,与go的“true”不同。


查看完整回答
反对 回复 2022-06-21
  • 1 回答
  • 0 关注
  • 131 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号