You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将GET参数$_GET['datesort']加入Ajax POST请求的表单数据中?

解决Ajax POST请求中携带指定GET参数的问题

方案一:使用现代浏览器原生API(推荐)

直接利用URLSearchParams提取URL中的datesort参数,判断存在后拼接到表单序列化数据中,代码修改如下:

jQuery(document).ready(function($) {
   $("#plugin_check").submit(function(e) {
    e.preventDefault(); // 阻止表单默认提交行为

    var form = $(this);
    var actionUrl = form.attr('action');
    // 提取URL中的datesort参数
    const urlParams = new URLSearchParams(window.location.search);
    const datesort = urlParams.get('datesort');
    
    // 构建POST请求数据
    var postData = form.serialize();
    if (datesort) {
        // 拼接参数,注意处理分隔符和特殊字符
        postData += (postData ? '&' : '') + 'datesort=' + encodeURIComponent(datesort);
    }
    
    $.ajax({
        type: "POST",
        cache: false,
        url: actionUrl,
        data: postData,
        success: function(data)
        {
          $("#result").html(data); // 展示后端响应内容
        }
    });
  });  
});

方案二:兼容老浏览器(比如IE)

如果需要兼容不支持URLSearchParams的老浏览器,可以自定义参数提取函数:

// 自定义函数:提取URL指定参数值,兼容老浏览器
function getUrlParam(name) {
    name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
    var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
    var results = regex.exec(location.search);
    return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
}

jQuery(document).ready(function($) {
   $("#plugin_check").submit(function(e) {
    e.preventDefault();

    var form = $(this);
    var actionUrl = form.attr('action');
    // 获取datesort参数
    var datesort = getUrlParam('datesort');
    
    var postData = form.serialize();
    if (datesort) {
        postData += (postData ? '&' : '') + 'datesort=' + encodeURIComponent(datesort);
    }
    
    $.ajax({
        type: "POST",
        cache: false,
        url: actionUrl,
        data: postData,
        success: function(data)
        {
          $("#result").html(data);
        }
    });
  });  
});

关键说明

  • encodeURIComponent用于处理参数值中的特殊字符,避免数据格式错误。
  • 拼接时判断现有表单数据是否为空,确保参数分隔符&使用正确。

内容的提问来源于stack exchange,提问作者Benni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 16:55:23