php - 通过ajax将查询字符串作为字符串传递
问题描述
我正在尝试通过 ajax 传递一个字符串,但是该字符串是从搜索中获取的查询字符串,看起来像这样:
search=&site=0&salesperson=0&referral=0&product=0&estimate=0&sort=date&open=on&filter_sbmt=Filter+Prospect&limit=30
因此,当我通过 ajax 将它作为变量传递时,url=search=&site=0...
它会设置$_POST['url']="search=",
然后将 &site 分隔为一个新帖子,而不是将整个字符串保存在一个中。
$.ajax({
type : 'POST',
url : '//'+base_url+'/ajax2/customer-search.php',
data : 'url='+url,
success : function(data) {
$('#customers_table').html(data);
}
});
我已经尝试在 php 端和 javascript 端使用 json 对其进行解码。这也没有帮助。我没主意了。
我怎样才能得到这个字符串"search=&site=0&salesperson=0&referral=0&product=0&estimate=0&sort=date&open=on&filter_sbmt=Filter+Prospect&limit=30"
到 ajax/customer-search.php
解决方案
如果您传递的是对象而不是字符串,jQuery 将为您编码数据。
data : { url }
或者,现代浏览器有一个 URLSearchParams 对象,它将为您编码数据:
var searchParams = new URLSearchParams();
searchParams.append("url", url);
var data = searchParams.toString();
推荐阅读
- php - 使用 PutFileAS() laravel 将文件存储在存储文件夹中
- laravel - Laravel api 版本控制 - 如何处理版本之间的共享功能?
- iphone - 由于在应用程序中订阅,应用程序被 App Store 拒绝
- elixir - 酿酒厂失败并显示消息“多重定义模块:'Elixir.Telemetry'”
- pyspark - Pyspark 命令移动到新行
- pic - 来自定时器输出的 PIC I2C 时钟
- android - RTC_WAKEUP 和 BroadcastReceiver 的警报以拦截打盹模式
- java - 为什么 servlet 的 init() 方法在不同的线程中运行?
- zend-framework3 - 如何在 Doctrine Zend Framework 3 中添加分页
- html - 动画完成后绝对定位的元素移动