【问题标题】:query string to url with Ajax使用 Ajax 查询字符串到 url
【发布时间】:2013-02-05 06:36:04
【问题描述】:

我想根据一些复选框更新我的网址...

我现在有一个看起来像 www.mywebsite.com/index.php?city=Amsterdam 的网址

我用来从 mysql 获取数据并将其显示在我的页面上的城市参数。在页面上,我还有一些复选框。如果用户单击复选框,我想更新 url,刷新页面,并使用新的 url 对数据库进行新的查询。

http://api.jquery.com/serialize/ 我找到了我喜欢的东西;)底部的示例显示了我想要的。仅此示例显示结果。有人可以帮我在 url 中得到那个结果吗?

所以在点击一些复选框后,我想要一个看起来像 www.mywebsite.com/index.php?city=Amsterdam&single=Single2&multiple=Multiple3&radio=radio1 的网址

我知道 PHP,但我对 jquery 和 ajax 的了解是 0 ;) 我用谷歌搜索,但几个小时后我仍然没有找到任何有用的东西。有人可以帮助我吗?

【问题讨论】:

  • 要更改 URL,您可以查看 thread 并使用 .param 函数在 jquery 中序列化自定义对象。您命名的仅适用于 html <form>

标签: ajax jquery


【解决方案1】:

试试这个

 $.ajax({
     url:"www.mywebsite.com/index.php"; // path to your url
     type: "get", //post or get
     data:$('#yourFormID').serialize(),
     success:function(){   //function called when ajax is completed
        alert('done');
     }
 });

【讨论】:

    【解决方案2】:

    如果您需要使用新的 url 刷新页面,您需要在用户单击复选框并更新 url 时序列化表单(更新 url 将刷新页面,如果您不想刷新页面,您将必须用户 pushstate 功能或 url 中的哈希)。

    试试这个:

        var $form = $('form');
        $('#my-checkbox').on('click', function() {
            window.location.search = '?' + $form.serialize();
        });
    

    【讨论】:

      猜你喜欢
      • 2021-01-06
      • 2013-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-20
      • 1970-01-01
      • 2022-03-24
      相关资源
      最近更新 更多