donglian5309 2014-09-25 16:15
浏览 27

使用GO和Martini提交表单

I'm very new in GO and martini package. What im trying to do now to to submit a form using AJAX. The problem is that go returns the whole html file. I don't know if there are errors since there no errors return. I need to test if my form is successfully submitting the data for I will use it for sending a POST data to an API. for now just need to know if my form is passing the data successfully.

I have this code.

GO code:

type UserSignup struct {
    Email string `form: "email"`
}

func signup_user(email string) UserSignup {
    return UserSignup {
        Email : email
    } 
}

AJAX call:

$.ajax({
    url: '/signup',
    type: 'POST',
    success: function(data) {
                 console.log(data);
             },
    error: function(result) {
                 //general div to handle error messages
                 console.log(result.responseText);
             }
    });

MTPL code:

<form class="form-signup" action="/signup">
    <input type="text" value="Email" name="email" class="signup-email" id="signup-email" onClick="this.setSelectionRange(0, this.value.length)">
    <input type="submit" value="Go" id="signup-go">
</form>

Thanks.

  • 写回答

1条回答 默认 最新

  • duanhuiuw12555 2014-09-26 01:59
    关注

    Form values actually come from http.Request, they aren't passed into the handler unless you're using Binding.

    Using request:

    func signup_user(r *http.Request) {
    
       email := r.FormValue("email")
    
       return email
    
    }
    

    Using martini binding:

    func signup_user(us UserSignup, r *http.Request) {
    
       email := us.Email
    
       return email
    
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看