【问题标题】:Post form to an API with javascript and jquery使用 javascript 和 jquery 将表单发布到 API
【发布时间】:2013-08-02 09:24:54
【问题描述】:

我不擅长表格。如何使用 javascript 将 post 表单从 underscore.js 模板发送到 express.js API?我尝试使用 .submit() 但它不起作用。我使用 jQueryMObile,所以表单位于数据角色页面内。

服务器上的路由:

app.put('/users/:userId/spot/:spotId/add', spot.addUserSpot);

形式:

    <form id="follow" method="put">
                    <input type="hidden" id="spot" value="<%= this.model._id %>">
                    <input type="hidden" id="user" value="<%= user %>">
                    <input type="submit" id="submitButton" value="Follow spot">
    </form>

    jQuery("#follow").on('submit', function(){
                    console.log("SUBMITTED");
                    var spot = jQuery("#user").attr("value");
                    var user = jQuery("#spot").attr("value");
                    jQuery("#follow").attr("action", "/users/"+user+"/spot"+spot+"/add");
                    alert(jQuery("#follow").attr("http://127.0.0.1:3000/users/"+user+"/spot/"+spot+"/add"));

   });%>

【问题讨论】:

    标签: javascript jquery forms jquery-mobile underscore.js


    【解决方案1】:

    大多数浏览器不支持 PUT,但 express.js 有一个内置的解决方案。只需在表单中添加一个方法覆盖:

    <form id="follow" method="post">
      <input type="hidden" name="_method" value="put" />
    

    【讨论】:

    • 哦,谢谢!问题是我的提交功能从未被触发。它就像页面只有在我单击提交按钮时才会刷新。我不知道 jQuery Mobile 是否干扰了什么?
    • jQuery(document).on('submit', '#follow', function() { 工作吗?
    猜你喜欢
    • 1970-01-01
    • 2019-06-14
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    • 1970-01-01
    相关资源
    最近更新 更多