【问题标题】:Send post-variable with javascript?使用 javascript 发送后变量?
【发布时间】:2009-08-29 09:08:07
【问题描述】:

是否可以使用 javascript 发送后变量? 我希望id 是通过邮局发送的,而不是获取。

window.location.href="hanteraTaBortAnvandare.php?id=10";

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    最简单的方法是在您的页面中添加一个表单:

    <form method="POST" action="hanteraTaBortAnvandare.php" id="DeleteUserForm">
    <input type="hidden" name="id" value="10" />
    </form>
    

    然后您只需发布表单:

    document.getElementById("DeleteUserForm").submit();
    

    【讨论】:

    • 是的,但在发送表单之前,我希望alert() 用户同意(是或否)发送表单。
    • 这很简单,只需在 if 语句中使用确认: if (window.confirm('Vill du verkligen radera användaren?')) { post form... }
    • 这应该是答案。
    • 如果它解决了您的问题,请接受答案。
    【解决方案2】:

    您可以使用表单然后document.getElementById('id_of_the_form').submit();

    表单不需要写成纯 HTML:你可以动态地创建它:

         function postIt()   {
            form = document.createElement('form');
            form.setAttribute('method', 'POST');
            form.setAttribute('action', 'someURL');
            myvar = document.createElement('input');
            myvar.setAttribute('name', 'somename');
            myvar.setAttribute('type', 'hidden');
            myvar.setAttribute('value', 'somevalue');
            form.appendChild(myvar);
            document.body.appendChild(form);
            form.submit();   
    }
    

    【讨论】:

      【解决方案3】:

      您可以使用 Ajax 请求(或使用隐藏表单)来实现 - 在这种情况下;

      MooTools 示例:

      new Request({
          url: 'hanteraTaBortAnvandare.php',
          method: 'post',
          data: {
              'id': '10'
          },
          onComplete: function(response) {
              alert(response);
          }
      });
      

      jQuery 示例:

      $.ajax({
          type: 'post',
          url: 'hanteraTaBortAnvandare.php',
          data: 'id=10',
          success: function(response) {
              alert(response);
          }
      });
      

      当然你可以在没有外部库的情况下做到这一点,但它们会简化很多!

      【讨论】:

      • +1 获取代码示例。您可以考虑添加 MooTools 的链接。
      【解决方案4】:

      您可以通过 JavaScript 提交表单数据,但不能使用 window.location.href。更改 URL 位置总是会发出 GET。

      您需要从 DOM 获取对表单的引用,然后对其发出 submit() 调用。

      【讨论】:

        【解决方案5】:

        您可以使用XMLHTTPRequest() object.

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-21
        • 2012-01-01
        相关资源
        最近更新 更多