dongxun5349 2014-11-08 15:10
浏览 4
已采纳

通过一个模板处理多个表单

I have two forms into a template, how can I identify every html form in order to process it into my handler?
Is possible get the form name in the post handler code?

I'm using nosurf, therefore I must generate and check the token in the same request, maybe I'm doing wrong..

    <form action="/form" method="post" name="form1">
         <label class="control-label">Set A</label>
            <div class="controls">
                <input type="text" id="my" name="my">
            </div>
      <div style="display:none;">
      <input name="_formkey" type="hidden" value="{{.token}}">
      </div>            
    </form>

    <form action="/form" method="post" name="form2">
         <label class="control-label">Set thing</label>
            <div class="controls">
                <input type="text" id="thing" name="thing">
            </div>
      <div style="display:none;">
      <input name="_formkey" type="hidden" value="{{.token}}">
      </div>            
    </form>

My Handler

func myHandler(w http.ResponseWriter, r *http.Request) {
    switch r.Method{
    case "GET":
        data:=map[string]interface{}{
            "key":nosurf.Token(req),
        }
        if err := renderTemplate(w, "base", data); err != nil {
            log.Error(err)
        }

    case "POST":
        // how?
        if r.FormValue("my"){}
        ...
        if r.FormValue("thing"){}
        ...

    }

}

Thanks

  • 写回答

1条回答 默认 最新

  • douwen1006 2014-11-08 15:51
    关注

    Is possible get the form name in the post handler code?

    I don't think that's possible, but you can send the form name in another hidden input field.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog